diff options
Diffstat (limited to 'packages/integrations/cloudflare/src/server.advanced.ts')
-rw-r--r-- | packages/integrations/cloudflare/src/server.advanced.ts | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/packages/integrations/cloudflare/src/server.advanced.ts b/packages/integrations/cloudflare/src/server.advanced.ts index 510e4e7e5..9758b8b19 100644 --- a/packages/integrations/cloudflare/src/server.advanced.ts +++ b/packages/integrations/cloudflare/src/server.advanced.ts @@ -1,4 +1,4 @@ -import type { Request as CFRequest } from '@cloudflare/workers-types'; +import type { Request as CFRequest, ExecutionContext } from '@cloudflare/workers-types'; import type { SSRManifest } from 'astro'; import { App } from 'astro/app'; import { getProcessEnvProxy, isNode } from './util.js'; @@ -15,7 +15,7 @@ type Env = { export function createExports(manifest: SSRManifest) { const app = new App(manifest); - const fetch = async (request: Request & CFRequest, env: Env, context: any) => { + const fetch = async (request: Request & CFRequest, env: Env, context: ExecutionContext) => { process.env = env as any; const { pathname } = new URL(request.url); @@ -38,6 +38,9 @@ export function createExports(manifest: SSRManifest) { caches, cf: request.cf, ...context, + waitUntil: (promise: Promise<any>) => { + context.waitUntil(promise); + }, }); let response = await app.render(request, routeData); |