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/image-types/global" />
/// <reference types="next/navigation-types/compat/navigation" />
// NOTE: This file should not be edited
// 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');
}
export async function getLocation(ip: string, headers: Headers) {
export async function getLocation(ip: string = '', headers: Headers) {
// Ignore local ips
if (await isLocalhost(ip)) {
return;

View file

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