diff --git a/packages/adapter-vercel/files/serverless.js b/packages/adapter-vercel/files/serverless.js index a8f774be9424..a6be08a65782 100644 --- a/packages/adapter-vercel/files/serverless.js +++ b/packages/adapter-vercel/files/serverless.js @@ -36,6 +36,12 @@ export default async (req, res) => { const request = await getRequest({ base: `https://${req.headers.host}`, request: req }); + const route_id = request.headers.get('x-sveltekit-matched-route'); + + if (route_id) { + res.setHeader('x-matched-route', route_id); + } + setResponse( res, await server.respond(request, { diff --git a/packages/kit/src/runtime/server/respond.js b/packages/kit/src/runtime/server/respond.js index 81b30e0756a5..34520a8d0b4d 100644 --- a/packages/kit/src/runtime/server/respond.js +++ b/packages/kit/src/runtime/server/respond.js @@ -272,6 +272,7 @@ export async function respond(request, options, manifest, state) { route = candidate; event.route = { id: route.id }; event.params = decode_params(matched); + headers['x-sveltekit-matched-route'] = route.id; break; } }