diff options
author | 2022-10-26 15:46:25 +0200 | |
---|---|---|
committer | 2022-10-26 09:46:25 -0400 | |
commit | d151d9f3f29c0a57c59b8029a18717808ccc7f8f (patch) | |
tree | d6ddc610bf46bbfe50eeb1bf3fe3362529d82f30 /packages/integrations/cloudflare/src/server.directory.ts | |
parent | 4efbfdd78d239f708a76eac38c2e971fc956a54e (diff) | |
download | astro-d151d9f3f29c0a57c59b8029a18717808ccc7f8f.tar.gz astro-d151d9f3f29c0a57c59b8029a18717808ccc7f8f.tar.zst astro-d151d9f3f29c0a57c59b8029a18717808ccc7f8f.zip |
enable access to cloudflare runtime (#5103)
* enable access to cloudflare runtime
* added get runtime api
added context to the runtime in "advanced" mode
* added typings and adjusted some return vars
* added default types
* added usage description to changeset and readme
Co-authored-by: AirBorne04 <unknown>
Co-authored-by: AirBorne04 <>
Diffstat (limited to 'packages/integrations/cloudflare/src/server.directory.ts')
-rw-r--r-- | packages/integrations/cloudflare/src/server.directory.ts | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/integrations/cloudflare/src/server.directory.ts b/packages/integrations/cloudflare/src/server.directory.ts index e51d0ea57..d31e2189f 100644 --- a/packages/integrations/cloudflare/src/server.directory.ts +++ b/packages/integrations/cloudflare/src/server.directory.ts @@ -9,12 +9,12 @@ export function createExports(manifest: SSRManifest) { const onRequest = async ({ request, next, + ...runtimeEnv }: { request: Request; next: (request: Request) => void; - }) => { + } & Record<string, unknown>) => { const { origin, pathname } = new URL(request.url); - // static assets if (manifest.assets.has(pathname)) { const assetRequest = new Request(`${origin}/static${pathname}`, request); @@ -28,6 +28,11 @@ export function createExports(manifest: SSRManifest) { Symbol.for('astro.clientAddress'), request.headers.get('cf-connecting-ip') ); + Reflect.set(request, Symbol.for('runtime'), { + ...runtimeEnv, + name: 'cloudflare', + next, + }); let response = await app.render(request, routeData); if (app.setCookieHeaders) { |