Fixed auth check.

This commit is contained in:
Mike Cao 2025-01-31 00:27:22 -08:00
parent 85382e25af
commit aaf8b1935f
3 changed files with 7 additions and 5 deletions

1
next-env.d.ts vendored
View file

@ -1,6 +1,5 @@
/// <reference types="next" /> /// <reference types="next" />
/// <reference types="next/image-types/global" /> /// <reference types="next/image-types/global" />
/// <reference types="next/navigation-types/compat/navigation" />
// NOTE: This file should not be edited // NOTE: This file should not be edited
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information. // see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.

View file

@ -86,7 +86,7 @@ function decodeHeader(s: string | undefined | null): string | undefined | null {
return Buffer.from(s, 'latin1').toString('utf-8'); return Buffer.from(s, 'latin1').toString('utf-8');
} }
export async function getLocation(ip: string, headers: Headers) { export async function getLocation(ip: string = '', headers: Headers) {
// Ignore local ips // Ignore local ips
if (await isLocalhost(ip)) { if (await isLocalhost(ip)) {
return; return;

View file

@ -22,6 +22,7 @@ export async function parseRequest(
let query = Object.fromEntries(url.searchParams); let query = Object.fromEntries(url.searchParams);
let body = await getJsonBody(request); let body = await getJsonBody(request);
let error: () => void | undefined; let error: () => void | undefined;
let auth = null;
if (schema) { if (schema) {
const isGet = request.method === 'GET'; const isGet = request.method === 'GET';
@ -36,11 +37,13 @@ export async function parseRequest(
} }
} }
const auth = !error && !options?.skipAuth ? await checkAuth(request) : null; if (!options?.skipAuth && !error) {
auth = await checkAuth(request);
if (!error && !auth) { if (!auth) {
error = () => unauthorized(); error = () => unauthorized();
} }
}
return { url, query, body, auth, error }; return { url, query, body, auth, error };
} }