summaryrefslogtreecommitdiff
path: root/packages/integrations/netlify/src/netlify-functions.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/netlify/src/netlify-functions.ts')
-rw-r--r--packages/integrations/netlify/src/netlify-functions.ts5
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());