(request: Request)
| 15 | // |
| 16 | // Pure (no `cloudflare:workers`) so it unit-tests without the worker runtime. |
| 17 | export const browserOriginFromRequest = (request: Request): string => { |
| 18 | const url = new URL(request.url); |
| 19 | const proto = request.headers.get("x-forwarded-proto")?.split(",")[0]?.trim(); |
| 20 | const host = request.headers.get("x-forwarded-host")?.split(",")[0]?.trim(); |
| 21 | if (!proto && !host) return url.origin; |
| 22 | return `${proto || url.protocol.replace(":", "")}://${host || url.host}`; |
| 23 | }; |
no test coverage detected