createSessionManager
Creates a session manager: signed id cookie, server-side data, idle and absolute lifetimes, periodic id rotation, explicit regenerate() against fixation.
Creates a session manager: signed id cookie, server-side data, idle and absolute lifetimes,
periodic id rotation, explicit regenerate() against fixation. A cookie whose signature does
not verify is treated as no cookie, and the id is never trusted before it verifies.
Import#
ts
import { createSessionManager } from "@shadow-js/dusk/server";
Signature#
ts
function createSessionManager(options: SessionOptions): SessionManager
Parameters#
| Name | Description |
|---|---|
options |
Secrets, store and lifetimes. |
Returns#
The manager.
Throws#
- Error
COOKIE_SECRET_WEAK/COOKIE_SECRET_MISSINGfor bad secrets; RangeError for bad lifetimes.
Examples#
ts
const sessions = createSessionManager({ secrets: [env.SESSION_SECRET] });
createHandler({ manifest, features: [pages()], middleware: [sessions.middleware()] });
// in a server function:
const session = await sessions.get(event); signIn(session, { userId: user.id });