diff options
author | 2022-09-28 16:55:27 -0400 | |
---|---|---|
committer | 2022-09-28 16:55:27 -0400 | |
commit | d3091f89e92fcfe1ad48daca74055d54b1c853a3 (patch) | |
tree | 78a49dcdd19b970ba42fb100ec2f25a39f047d97 /packages/integrations/cloudflare/src | |
parent | ec55745ae5454207fa0405170588d898b49b9a48 (diff) | |
download | astro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.tar.gz astro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.tar.zst astro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.zip |
Astro.cookies implementation (#4876)
* Astro.cookies implementation
* Remove unused var
* Fix build
* Add a changesetp
* Remove spoken-word expires
Diffstat (limited to 'packages/integrations/cloudflare/src')
-rw-r--r-- | packages/integrations/cloudflare/src/server.advanced.ts | 10 | ||||
-rw-r--r-- | packages/integrations/cloudflare/src/server.directory.ts | 10 |
2 files changed, 18 insertions, 2 deletions
diff --git a/packages/integrations/cloudflare/src/server.advanced.ts b/packages/integrations/cloudflare/src/server.advanced.ts index 7b88c7b1e..62adb44ec 100644 --- a/packages/integrations/cloudflare/src/server.advanced.ts +++ b/packages/integrations/cloudflare/src/server.advanced.ts @@ -26,7 +26,15 @@ export function createExports(manifest: SSRManifest) { Symbol.for('astro.clientAddress'), request.headers.get('cf-connecting-ip') ); - return app.render(request, routeData); + let response = await app.render(request, routeData); + + if(app.setCookieHeaders) { + for(const setCookieHeader of app.setCookieHeaders(response)) { + response.headers.append('Set-Cookie', setCookieHeader); + } + } + + return response; } return new Response(null, { diff --git a/packages/integrations/cloudflare/src/server.directory.ts b/packages/integrations/cloudflare/src/server.directory.ts index 58e83be34..7a484378c 100644 --- a/packages/integrations/cloudflare/src/server.directory.ts +++ b/packages/integrations/cloudflare/src/server.directory.ts @@ -28,7 +28,15 @@ export function createExports(manifest: SSRManifest) { Symbol.for('astro.clientAddress'), request.headers.get('cf-connecting-ip') ); - return app.render(request, routeData); + let response = await app.render(request, routeData); + + if(app.setCookieHeaders) { + for(const setCookieHeader of app.setCookieHeaders(response)) { + response.headers.append('Set-Cookie', setCookieHeader); + } + } + + return response; } return new Response(null, { |