verifySignedCookie

import { verifySignedCookie } from "jsr:@ende/http/unstable-signed-cookie";

function ยท experimental

async function verifySignedCookie(signedCookie: string, key: CryptoKey): Promise<boolean>

Returns a promise of a boolean indicating whether the signed cookie is valid.

signedCookie: string

The signed cookie to verify.

key: CryptoKey

The cryptographic key to verify the cookie with.

Returns

Whether or not the cookie is valid.

Example: Usage

import { verifySignedCookie } from "@ende/http/unstable-signed-cookie";
import { getCookies } from "@ende/http/cookie";

const key = await crypto.subtle.generateKey(
  { name: "HMAC", hash: "SHA-256" },
  true,
  ["sign", "verify"],
);

const headers = new Headers({
  Cookie: "location=tokyo.37f7481039762eef5cd46669f93c0a3214dfecba7d0cdc0b0dc40036063fb22e",
});
const signedCookie = getCookies(headers)["location"];
if (signedCookie === undefined) throw new Error("Cookie not found");
await verifySignedCookie(signedCookie, key);

Source