summaryrefslogtreecommitdiff
path: root/packages/integrations/netlify/src
diff options
context:
space:
mode:
authorGravatar Okiki Ojo <okikio.dev@gmail.com> 2022-07-22 16:30:17 -0400
committerGravatar GitHub <noreply@github.com> 2022-07-22 16:30:17 -0400
commit0cc6ede362996b9faba57481a790d6eb7fba2045 (patch)
treeb2f5894c8adb2e28adf6e2fcd8ee3a46bad6b189 /packages/integrations/netlify/src
parent4392083ccad7f94083f99a37370fa2d01cffba80 (diff)
downloadastro-0cc6ede362996b9faba57481a790d6eb7fba2045.tar.gz
astro-0cc6ede362996b9faba57481a790d6eb7fba2045.tar.zst
astro-0cc6ede362996b9faba57481a790d6eb7fba2045.zip
SSR 404 and 500 routes in adapters (#4018)
* fix(WIP): SSR 404 and 500 routes * Implement the feature Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Diffstat (limited to 'packages/integrations/netlify/src')
-rw-r--r--packages/integrations/netlify/src/netlify-functions.ts6
1 files changed, 4 insertions, 2 deletions
diff --git a/packages/integrations/netlify/src/netlify-functions.ts b/packages/integrations/netlify/src/netlify-functions.ts
index 0363fb803..d40254f96 100644
--- a/packages/integrations/netlify/src/netlify-functions.ts
+++ b/packages/integrations/netlify/src/netlify-functions.ts
@@ -66,7 +66,9 @@ export const createExports = (manifest: SSRManifest, args: Args) => {
}
const request = new Request(rawUrl, init);
- if (!app.match(request)) {
+ let routeData = app.match(request, { matchNotFound: true });
+
+ if (!routeData) {
return {
statusCode: 404,
body: 'Not found',
@@ -76,7 +78,7 @@ 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 response: Response = await app.render(request, routeData);
const responseHeaders = Object.fromEntries(response.headers.entries());
const responseContentType = parseContentType(responseHeaders['content-type']);