NextRequest
NextRequest は、追加の便利なメソッドと共に、Web Request APIを拡張します。
cookies
リクエストのSet-Cookie
ヘッダーを読み取るか変更します。
set(name, value)
名前を指定して、リクエストに指定された値でcookieを設定します。
// 着信リクエスト /home があるとき
// cookieを設定してバナーを非表示にする
// リクエストには `Set-Cookie:show-banner=false;path=/home` ヘッダーが付きます
request.cookies.set('show-banner', 'false')
get(name)
cookie 名を指定して、cookieの値を返します。cookieが見つからない場合、undefined
が返されます。複数のcookieが見つかった場合、最初のものが返されます。
// 着信リクエスト /home があるとき
// { name: 'show-banner', value: 'false', Path: '/home' }
request.cookies.get('show-banner')
getAll()
cookie名を指定して、そのcookieの値を返します。名前が指定されていない場合、リクエストのすべてのcookieが返されます。
// 着信リクエスト /home があるとき
// [
// { name: 'experiments', value: 'new-pricing-page', Path: '/home' },
// { name: 'experiments', value: 'winter-launch', Path: '/home' },
// ]
request.cookies.getAll('experiments')
// または、リクエストのすべてのcookieを取得
request.cookies.getAll()
delete(name)
cookie名を指定して、リクエストからcookieを削除します。
// 削除された場合は true を返し、何も削除されない場合は false を返します
request.cookies.delete('experiments')
has(name)
cookie名を指定して、cookieがリクエスト上に存在する場合に true
を返します。
// cookieが存在する場合はtrueを返し、存在しない場合はfalseを返します
request.cookies.has('experiments')
clear()
リクエストから Set-Cookie
ヘッダーを削除します。
request.cookies.clear()
nextUrl
ネイティブのURL
APIを、追加の便利なメソッドやNext.js特有のプロパティとともに拡張します。
// /home へのリクエストがあった場合、pathnameは /home となります
request.nextUrl.pathname
// /home?name=lee へのリクエストがあると、searchParamsは { 'name': 'lee' } になります
request.nextUrl.searchParams
次のオプションが使用可能です:
プロパティ | 型 | 説明 |
---|---|---|
basePath | string | URLのベースパス |
buildId | string | undefined | Next.js アプリケーションのビルド識別子。 カスタマイズ可能。 |
pathname | string | URLのパス名 |
searchParams | Object | URLの検索パラメータ。 |
注記: Pages Router の国際化プロパティは App Router では使用できません。App Router による国際化についてもっと知る。
バージョン履歴
バージョン | 変更 |
---|---|
v15.0.0 | ip と geo が削除されました。 |