mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-04-21 06:29:29 -05:00
18 lines
470 B
TypeScript
18 lines
470 B
TypeScript
import { sessionIdAsyncLocalStorage } from "./session-id-context.server";
|
|
|
|
type MiddlewareArgs = {
|
|
request: Request;
|
|
context: unknown;
|
|
};
|
|
|
|
type MiddlewareFn = (
|
|
args: MiddlewareArgs,
|
|
next: () => Promise<Response>,
|
|
) => Promise<Response>;
|
|
|
|
export const sessionIdMiddleware: MiddlewareFn = async ({ request }, next) => {
|
|
const sessionId = request.headers.get("Sendou-Session-Id") ?? undefined;
|
|
|
|
return sessionIdAsyncLocalStorage.run({ sessionId }, () => next());
|
|
};
|