getHeader()

Reads a single request header value in a server event handler.

Since Nuxt 3.0 Spec ↗

Syntax

const value = getHeader(event, name)

Parameters

NameTypeRequiredDescription
event H3Event Yes The request event.
name string Yes Header name (case-insensitive).

Returns

string | undefined — The header value, or undefined.

Examples

// server/api/whoami.get.ts
export default defineEventHandler((event) => {
  const auth = getHeader(event, 'authorization')
  if (!auth?.startsWith('Bearer ')) {
    throw createError({ statusCode: 401 })
  }
  return verify(auth.slice(7))
})
export default defineEventHandler((event) => {
  const ua = getHeader(event, 'user-agent') ?? 'unknown'
  return { ua }
})

Notes

Header names are case-insensitive. Returns `undefined` if missing. Use `getRequestHeaders(event)` to read all headers at once. For the client IP behind proxies prefer `getRequestIP(event, { xForwardedFor: true })`.

See also