diff options
author | 2022-07-19 16:10:15 -0400 | |
---|---|---|
committer | 2022-07-19 16:10:15 -0400 | |
commit | 5a23483efb3ba614b05a00064f84415620605204 (patch) | |
tree | d0f70410ad1c015262d7a4518b133be7e674dfea /packages/integrations/netlify/src/netlify-edge-functions.ts | |
parent | d73c04a9e58c7d320cdb4f34604de76b30199778 (diff) | |
download | astro-5a23483efb3ba614b05a00064f84415620605204.tar.gz astro-5a23483efb3ba614b05a00064f84415620605204.tar.zst astro-5a23483efb3ba614b05a00064f84415620605204.zip |
Adds support for Astro.clientAddress (#3973)
* Adds support for Astro.clientAddress
* Pass through mode and adapterName in SSG
* Pass through the mode provided
* Provide an adapter specific error message when possible
Diffstat (limited to 'packages/integrations/netlify/src/netlify-edge-functions.ts')
-rw-r--r-- | packages/integrations/netlify/src/netlify-edge-functions.ts | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/packages/integrations/netlify/src/netlify-edge-functions.ts b/packages/integrations/netlify/src/netlify-edge-functions.ts index 0d2974c61..a2c883585 100644 --- a/packages/integrations/netlify/src/netlify-edge-functions.ts +++ b/packages/integrations/netlify/src/netlify-edge-functions.ts @@ -1,6 +1,8 @@ import type { SSRManifest } from 'astro'; import { App } from 'astro/app'; +const clientAddressSymbol = Symbol.for('astro.clientAddress'); + export function createExports(manifest: SSRManifest) { const app = new App(manifest); @@ -13,6 +15,8 @@ export function createExports(manifest: SSRManifest) { return; } if (app.match(request)) { + const ip = request.headers.get('x-nf-client-connection-ip'); + Reflect.set(request, clientAddressSymbol, ip); return app.render(request); } |