From 6d31bbf0083f36dfc652f6329b2a587b48c0513c Mon Sep 17 00:00:00 2001 From: magnus Date: Mon, 17 Mar 2025 08:31:45 +0100 Subject: [PATCH 1/4] fix: remove internal next headers in middleware response --- packages/open-next/src/core/routing/middleware.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/open-next/src/core/routing/middleware.ts b/packages/open-next/src/core/routing/middleware.ts index b0aa2b4cf..2e434c464 100644 --- a/packages/open-next/src/core/routing/middleware.ts +++ b/packages/open-next/src/core/routing/middleware.ts @@ -110,6 +110,13 @@ export async function handleMiddleware( const resHeaders: Record = {}; responseHeaders.delete("x-middleware-override-headers"); + /* Next will set the header `x-middleware-set-cookie` when you `set-cookie` in the middleware. + * We can delete it here since it will be set in `set-cookie` aswell. Next removes this header in the response themselves. + * `x-middleware-next` is set when you invoke `NextResponse.next()`. We can delete it here aswell. + */ + responseHeaders.delete("x-middleware-set-cookie"); + responseHeaders.delete("x-middleware-next"); + const xMiddlewareKey = "x-middleware-request-"; responseHeaders.forEach((value, key) => { if (key.startsWith(xMiddlewareKey)) { From 9c0b34a694fa32a37bc32c34532e33d2282043c1 Mon Sep 17 00:00:00 2001 From: magnus Date: Mon, 17 Mar 2025 08:38:59 +0100 Subject: [PATCH 2/4] lint --- packages/open-next/src/core/routing/middleware.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/open-next/src/core/routing/middleware.ts b/packages/open-next/src/core/routing/middleware.ts index 2e434c464..4a53b4b96 100644 --- a/packages/open-next/src/core/routing/middleware.ts +++ b/packages/open-next/src/core/routing/middleware.ts @@ -116,7 +116,7 @@ export async function handleMiddleware( */ responseHeaders.delete("x-middleware-set-cookie"); responseHeaders.delete("x-middleware-next"); - + const xMiddlewareKey = "x-middleware-request-"; responseHeaders.forEach((value, key) => { if (key.startsWith(xMiddlewareKey)) { From 44506270e72909e98f42e1c94c0ca42243673f5b Mon Sep 17 00:00:00 2001 From: magnus Date: Mon, 17 Mar 2025 08:39:36 +0100 Subject: [PATCH 3/4] add space --- packages/open-next/src/core/routing/middleware.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/open-next/src/core/routing/middleware.ts b/packages/open-next/src/core/routing/middleware.ts index 4a53b4b96..0420bd0c1 100644 --- a/packages/open-next/src/core/routing/middleware.ts +++ b/packages/open-next/src/core/routing/middleware.ts @@ -110,7 +110,7 @@ export async function handleMiddleware( const resHeaders: Record = {}; responseHeaders.delete("x-middleware-override-headers"); - /* Next will set the header `x-middleware-set-cookie` when you `set-cookie` in the middleware. + /* Next will set the header `x-middleware-set-cookie` when you `set-cookie` in the middleware. * We can delete it here since it will be set in `set-cookie` aswell. Next removes this header in the response themselves. * `x-middleware-next` is set when you invoke `NextResponse.next()`. We can delete it here aswell. */ From 08cfe377bc5c31c0bd1824c537385aef598318f1 Mon Sep 17 00:00:00 2001 From: conico974 Date: Mon, 17 Mar 2025 09:12:39 +0100 Subject: [PATCH 4/4] Create metal-news-watch.md --- .changeset/metal-news-watch.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/metal-news-watch.md diff --git a/.changeset/metal-news-watch.md b/.changeset/metal-news-watch.md new file mode 100644 index 000000000..c87e4b528 --- /dev/null +++ b/.changeset/metal-news-watch.md @@ -0,0 +1,5 @@ +--- +"@opennextjs/aws": patch +--- + +fix: remove internal next headers in middleware response