Skip to content

Commit 49329d2

Browse files
authored
fix: avoid modifying req.nextUrl (#142)
Avoids modifying req.nextUrl by constructing new URLs instead. I did not actually test these changes, please verify before merging.
1 parent 622ec09 commit 49329d2

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

packages/sdk/vercel/examples/complete/middleware.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ export async function middleware(req: NextRequest, context: NextFetchEvent) {
1414
!process.env.LD_CLIENT_SIDE_ID ||
1515
!parseConnectionString(process.env.EDGE_CONFIG)
1616
) {
17-
req.nextUrl.pathname = '/missing-edge-config';
18-
return NextResponse.rewrite(req.nextUrl);
17+
return NextResponse.rewrite(new URL('/missing-edge-config', request.url));
1918
}
2019

2120
try {
@@ -41,11 +40,10 @@ export async function middleware(req: NextRequest, context: NextFetchEvent) {
4140
flagContext,
4241
false
4342
);
44-
if (hotDogFaviconEnabled) {
45-
req.nextUrl.pathname = '/hot-dog.ico';
46-
}
4743

48-
return NextResponse.rewrite(req.nextUrl);
44+
return hotDogFaviconEnabled
45+
? NextResponse.rewrite(new URL('/hot-dog.ico', request.url))
46+
: NextResponse.next()
4947
}
5048

5149
const storeClosed = await client.variation('store-closed', flagContext, false);

0 commit comments

Comments
 (0)