From 779bb9e06ae5e9fcea3c52c1f3bad38990b3850b Mon Sep 17 00:00:00 2001 From: Alex Kirszenberg Date: Tue, 31 Jan 2023 17:43:01 +0100 Subject: [PATCH] Return a 404 status code when a data route is `.notFound` (vercel/turbo#3545) Returning a 404 status code is required for the client-side router to redirect to the error page. --- .../crates/next-core/js/src/internal/page-server-handler.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/next-swc/crates/next-core/js/src/internal/page-server-handler.tsx b/packages/next-swc/crates/next-core/js/src/internal/page-server-handler.tsx index f7b880db00..31b24328d9 100644 --- a/packages/next-swc/crates/next-core/js/src/internal/page-server-handler.tsx +++ b/packages/next-swc/crates/next-core/js/src/internal/page-server-handler.tsx @@ -206,7 +206,9 @@ export default function startHandler({ if (isDataReq) { return { type: "response", - statusCode, + // Returning a 404 status code is required for the client-side router + // to redirect to the error page. + statusCode: 404, body: '{"notFound":true}', headers: [["Content-Type", MIME_APPLICATION_JAVASCRIPT]], };