summary refs log tree commit diff
path: root/src/middlewares/Authentication.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/middlewares/Authentication.ts')
-rw-r--r--src/middlewares/Authentication.ts12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/middlewares/Authentication.ts b/src/middlewares/Authentication.ts

index 65d5a2cf..30445815 100644 --- a/src/middlewares/Authentication.ts +++ b/src/middlewares/Authentication.ts
@@ -2,7 +2,13 @@ import { NextFunction, Request, Response } from "express"; import { HTTPError } from "lambert-server"; import { checkToken } from "fosscord-server-util"; -export const NO_AUTHORIZATION_ROUTES = ["/api/v8/auth/login", "/api/v8/auth/register", "/api/v8/webhooks/"]; +export const NO_AUTHORIZATION_ROUTES = [ + "/api/v8/auth/login", + "/api/v8/auth/register", + "/api/v8/webhooks/", + "/api/v8/gateway", + "/api/v8/experiments", +]; declare global { namespace Express { @@ -14,6 +20,8 @@ declare global { } export async function Authentication(req: Request, res: Response, next: NextFunction) { + if (!req.url.startsWith("/api")) return next(); + if (req.url.startsWith("/api/v8/invites") && req.method === "GET") return next(); if (NO_AUTHORIZATION_ROUTES.some((x) => req.url.startsWith(x))) return next(); if (!req.headers.authorization) return next(new HTTPError("Missing Authorization Header", 401)); // TODO: check if user is banned/token expired @@ -22,7 +30,7 @@ export async function Authentication(req: Request, res: Response, next: NextFunc const decoded: any = await checkToken(req.headers.authorization); req.token = decoded; - req.user_id = BigInt(decoded.id); + req.user_id = decoded.id; return next(); } catch (error) { return next(new HTTPError(error.toString(), 400));