UNPKG

fauth-template

Version:
30 lines (24 loc) 779 B
import { Response } from "express"; import { generateTokens, Payload } from "./jwt"; type Params = { res: Response; payload: Payload; }; export async function createSession({ res, payload }: Params) { const expiresAt = new Date(Date.now() + 7 * 24 * 60 * 60 * 1000); const jwtToken = await generateTokens(payload); res.cookie("auth_access_token", jwtToken.accessToken, { sameSite: "lax", httpOnly: true, expires: new Date(Date.now() + 15 * 60 * 1000), path: "/", secure: process.env.NODE_ENV === "production", }); res.cookie("auth_session_token", jwtToken.refreshToken, { sameSite: "lax", httpOnly: true, expires: expiresAt, path: "/", secure: process.env.NODE_ENV === "production", }); }