Reputation: 21
I tried to access the request.headers
in the Next.js Middleware but the data is not showing up.
If I access something else, the data can appear. If I display headers it gets an error:
Server Error
TypeError: Cannot delete property 'Symbol(set-cookie)' of #<HeadersList2>
export function middleware(request) {
console.log(request.credentials); // show -> same-origin
console.log(request.method); // show -> GET
console.log(request.headers); // page error
console.log(request.headers.referer); // not show / undefined
}
export const config = {
matcher: "/:path*/generate",
};
Fill in the data in the request variable:
Error when I display request.headers
:
Upvotes: 2
Views: 7796
Reputation: 50268
You can't access the headers
object directly inside the middleware. If you want to access a specific header you should use the get
method.
export function middleware(request) {
console.log(request.headers.get('referer')); // Will output `referer` header value
return NextResponse.next();
}
Upvotes: 11