UNPKG

hono-passkit-webservice

Version:
35 lines 1.29 kB
import { isAuthorizationSchemeValid, getAuthorizationToken, } from "passkit-webservice-toolkit/v1/utils/auth.js"; export async function assertAuthorizationSchemeValid(context, next) { const authorization = context.req.header("Authorization") || ""; if (!isAuthorizationSchemeValid(authorization)) { context.status(401); return context.json({ message: "Apple Schema validation for Authorization header failed.", }); } await next(); } export function assertTokenValid(verifyToken) { return async function (context, next) { if (typeof verifyToken !== "function") { return next(); } const authorization = context.req.header("Authorization") || ""; let token = ""; try { token = getAuthorizationToken(authorization); const tokenValid = await verifyToken(token); if (!tokenValid) { throw new Error("Token verifier rejected the provided token."); } } catch (error) { context.status(401); return context.json({ message: error instanceof Error ? error.message : "Invalid token.", }); } return next(); }; } //# sourceMappingURL=hooks.js.map