(request: Request, pathname: string)
| 75 | |
| 76 | /** Build the upstream request for an already-classified PostHog proxy path. */ |
| 77 | export const buildPosthogUpstream = (request: Request, pathname: string): Request => { |
| 78 | const url = new URL(request.url); |
| 79 | url.hostname = pathname.startsWith(`${POSTHOG_PROXY_PATH}/static/`) |
| 80 | ? POSTHOG_ASSETS_HOST |
| 81 | : POSTHOG_INGEST_HOST; |
| 82 | url.protocol = "https:"; |
| 83 | url.port = ""; |
| 84 | url.pathname = pathname.slice(POSTHOG_PROXY_PATH.length) || "/"; |
| 85 | |
| 86 | const upstream = new Request(url, request); |
| 87 | upstream.headers.delete("cookie"); |
| 88 | return upstream; |
| 89 | }; |
| 90 | |
| 91 | export const docsProxyResponse = (request: Request, pathname: string): Promise<Response> => |
| 92 | tracer.startActiveSpan( |
no test coverage detected