diff options
Diffstat (limited to 'packages/integrations/netlify/src/netlify-functions.ts')
-rw-r--r-- | packages/integrations/netlify/src/netlify-functions.ts | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/packages/integrations/netlify/src/netlify-functions.ts b/packages/integrations/netlify/src/netlify-functions.ts index d342afc4c..0363fb803 100644 --- a/packages/integrations/netlify/src/netlify-functions.ts +++ b/packages/integrations/netlify/src/netlify-functions.ts @@ -15,6 +15,8 @@ function parseContentType(header?: string) { return header?.split(';')[0] ?? ''; } +const clientAddressSymbol = Symbol.for('astro.clientAddress'); + export const createExports = (manifest: SSRManifest, args: Args) => { const app = new App(manifest); @@ -71,6 +73,9 @@ export const createExports = (manifest: SSRManifest, args: Args) => { }; } + const ip = headers['x-nf-client-connection-ip']; + Reflect.set(request, clientAddressSymbol, ip); + const response: Response = await app.render(request); const responseHeaders = Object.fromEntries(response.headers.entries()); |