Add response status check

This commit is contained in:
Lncvrt committed 2026-07-29 04:43:43 -07:00
1 parent e9286c4b64
commit b777a0a4ec
3 files changed
+38 -9

No files matched your search

+24 -6
View File
@@ -38,7 +38,10 @@ function AccountLoggedOut () {
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (!(await verifySignature(JSON.stringify(data), signature))) { if (
response.status != 200 ||
!(await verifySignature(JSON.stringify(data), signature))
) {
await message( await message(
"Failed to login, there was an issue validating the data wasn't tampered with.", "Failed to login, there was an issue validating the data wasn't tampered with.",
{ title: 'Request tampered', kind: 'error' } { title: 'Request tampered', kind: 'error' }
@@ -59,7 +62,10 @@ function AccountLoggedOut () {
) )
const signature2 = response2.headers.get('x-signature') ?? '' const signature2 = response2.headers.get('x-signature') ?? ''
const data2 = await response2.json() const data2 = await response2.json()
if (await verifySignature(JSON.stringify(data2), signature2)) { if (
response2.status == 200 &&
(await verifySignature(JSON.stringify(data2), signature2))
) {
setServerVersionList(data2) setServerVersionList(data2)
} }
@@ -170,7 +176,10 @@ function AccountChangeUsername ({
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (!(await verifySignature(JSON.stringify(data), signature))) { if (
response.status != 200 ||
!(await verifySignature(JSON.stringify(data), signature))
) {
await message( await message(
"Failed to change username, there was an issue validating the data wasn't tampered with.", "Failed to change username, there was an issue validating the data wasn't tampered with.",
{ title: 'Request tampered', kind: 'error' } { title: 'Request tampered', kind: 'error' }
@@ -257,7 +266,10 @@ function AccountChangePassword ({
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (!(await verifySignature(JSON.stringify(data), signature))) { if (
response.status != 200 ||
!(await verifySignature(JSON.stringify(data), signature))
) {
await message( await message(
"Failed to change password, there was an issue validating the data wasn't tampered with.", "Failed to change password, there was an issue validating the data wasn't tampered with.",
{ title: 'Request tampered', kind: 'error' } { title: 'Request tampered', kind: 'error' }
@@ -278,7 +290,10 @@ function AccountChangePassword ({
) )
const signature2 = response2.headers.get('x-signature') ?? '' const signature2 = response2.headers.get('x-signature') ?? ''
const data2 = await response2.json() const data2 = await response2.json()
if (await verifySignature(JSON.stringify(data2), signature2)) { if (
response2.status == 200 &&
(await verifySignature(JSON.stringify(data2), signature2))
) {
setServerVersionList(data2) setServerVersionList(data2)
} }
@@ -374,7 +389,10 @@ function AccountLoggedIn () {
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (await verifySignature(JSON.stringify(data), signature)) { if (
response.status == 200 &&
(await verifySignature(JSON.stringify(data), signature))
) {
setServerVersionList(data) setServerVersionList(data)
} }
+6 -1
View File
@@ -221,6 +221,7 @@ export default function RootLayout ({
const signature = downloadInfoRequest.headers.get('x-signature') ?? '' const signature = downloadInfoRequest.headers.get('x-signature') ?? ''
const data = await downloadInfoRequest.json() const data = await downloadInfoRequest.json()
if ( if (
downloadInfoRequest.status != 200 ||
!(await verifySignature(JSON.stringify(data), signature)) || !(await verifySignature(JSON.stringify(data), signature)) ||
!data.success !data.success
) { ) {
@@ -732,9 +733,13 @@ export default function RootLayout ({
} }
} }
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (await verifySignature(JSON.stringify(data), signature)) { if (
response.status == 200 &&
(await verifySignature(JSON.stringify(data), signature))
) {
setServerVersionList(data) setServerVersionList(data)
} else { } else {
await message( await message(
+8 -2
View File
@@ -52,7 +52,10 @@ export default function ModDownloadsPopup () {
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (await verifySignature(JSON.stringify(data), signature)) { if (
response.status == 200 &&
(await verifySignature(JSON.stringify(data), signature))
) {
setMods(data as Mod[]) setMods(data as Mod[])
} else { } else {
setMods(1) setMods(1)
@@ -86,7 +89,10 @@ export default function ModDownloadsPopup () {
) )
const signature = response.headers.get('x-signature') ?? '' const signature = response.headers.get('x-signature') ?? ''
const data = await response.json() const data = await response.json()
if (await verifySignature(JSON.stringify(data), signature)) { if (
response.status == 200 &&
(await verifySignature(JSON.stringify(data), signature))
) {
setMods(data as Mod[]) setMods(data as Mod[])
} else { } else {
setMods(1) setMods(1)