title | description |
---|---|
headers |
API reference for the headers function. |
headers
is an async function that allows you to read the HTTP incoming request headers from a Server Component.
import { headers } from 'next/headers'
export default async function Page() {
const headersList = await headers()
const userAgent = headersList.get('user-agent')
}
import { headers } from 'next/headers'
export default async function Page() {
const headersList = await headers()
const userAgent = headersList.get('user-agent')
}
headers
does not take any parameters.
headers
returns a read-only Web Headers object.
Headers.entries()
: Returns aniterator
allowing to go through all key/value pairs contained in this object.Headers.forEach()
: Executes a provided function once for each key/value pair in thisHeaders
object.Headers.get()
: Returns aString
sequence of all the values of a header within aHeaders
object with a given name.Headers.has()
: Returns a boolean stating whether aHeaders
object contains a certain header.Headers.keys()
: Returns aniterator
allowing you to go through all keys of the key/value pairs contained in this object.Headers.values()
: Returns aniterator
allowing you to go through all values of the key/value pairs contained in this object.
headers
is an asynchronous function that returns a promise. You must useasync/await
or React'suse
function.- In version 14 and earlier,
headers
was a synchronous function. To help with backwards compatibility, you can still access it synchronously in Next.js 15, but this behavior will be deprecated in the future.
- In version 14 and earlier,
- Since
headers
is read-only, you cannotset
ordelete
the outgoing request headers. headers
is a Dynamic API whose returned values cannot be known ahead of time. Using it in will opt a route into dynamic rendering.
import { headers } from 'next/headers'
export default async function Page() {
const authorization = (await headers()).get('authorization')
const res = await fetch('...', {
headers: { authorization }, // Forward the authorization header
})
const user = await res.json()
return <h1>{user.name}</h1>
}
Version | Changes |
---|---|
v15.0.0-RC |
headers is now an async function. A codemod is available. |
v13.0.0 |
headers introduced. |