Files
pangolin/server/middlewares/verifySession.ts
2025-11-25 10:51:53 -05:00

23 lines
630 B
TypeScript

import { NextFunction, Response } from "express";
import ErrorResponse from "@server/types/ErrorResponse";
import { verifySession } from "@server/auth/sessions/verifySession";
import { unauthorized } from "@server/auth/unauthorizedResponse";
export const verifySessionMiddleware = async (
req: any,
res: Response<ErrorResponse>,
next: NextFunction
) => {
const { forceLogin } = req.query;
const { session, user } = await verifySession(req, forceLogin === "true");
if (!session || !user) {
return next(unauthorized());
}
req.user = user;
req.session = session;
return next();
};