INNER CODE UNIT · TypeScript
signingSignatureAgent
cloudflare/web-bot-auth · packages/web-bot-auth/src/index.ts:184
function signingSignatureAgent(
request: Request | RequestDescriptor,
key: string
): SignatureAgentSelection | undefined {
const header = requestHeader(request, SIGNATURE_AGENT_HEADER);
if (header === undefined) return undefined;
const parsed = parseSignatureAgentHeader(header);
if (parsed.kind === "legacy") {
const entry = parsed.entries[0];
if (entry === undefined) return policyError("Signature-Agent is empty");
return Object.freeze({ component: SIGNATURE_AGENT_HEADER });
}
const entry = parsed.entries.find((candidate) => candidate.label === key);
if (entry === undefined) {
return policyError(`Signature-Agent has no member ${key}`);
}
return Object.freeze({
component: component(SIGNATURE_AGENT_HEADER, { key }),