NextRequest
NextRequestはWeb Request APIを拡張し、追加の便利なメソッドを提供します。
cookies
リクエストのSet-Cookieヘッダーを読み込むか、変更します。
set(name, value)
名前を指定して、その値でリクエストにクッキーを設定します。
// 受信リクエスト /home が与えられた場合
// バナーを非表示にするためのクッキーを設定
// リクエストは `Set-Cookie:show-banner=false;path=/home` ヘッダーを持つようになります
request.cookies.set('show-banner', 'false')get(name)
クッキー名を指定して、クッキーの値を返します。クッキーが見つからない場合は、undefinedが返されます。複数のクッキーが見つかった場合は、最初のものが返されます。
// 受信リクエスト /home が与えられた場合
// { name: 'show-banner', value: 'false', Path: '/home' }
request.cookies.get('show-banner')getAll()
クッキー名を指定して、クッキーの値を返します。名前が指定されない場合は、リクエスト上のすべてのクッキーを返します。
// 受信リクエスト /home が与えられた場合
// [
// { name: 'experiments', value: 'new-pricing-page', Path: '/home' },
// { name: 'experiments', value: 'winter-launch', Path: '/home' },
// ]
request.cookies.getAll('experiments')
// または、リクエストのすべてのクッキーを取得
request.cookies.getAll()delete(name)
クッキー名を指定して、リクエストからクッキーを削除します。
// 削除された場合はtrue、何も削除されない場合はfalseを返します
request.cookies.delete('experiments')has(name)
クッキー名を指定して、クッキーがリクエストに存在する場合はtrueを返します。
// クッキーが存在する場合はtrue、存在しない場合はfalseを返します
request.cookies.has('experiments')clear()
リクエストからSet-Cookieヘッダーを削除します。
request.cookies.clear()nextUrl
ネイティブなURLAPIを拡張し、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アプリケーションのビルド識別子。カスタマイズ可能です。 |
defaultLocale | string | undefined | 国際化のデフォルトロケール。 |
domainLocale | ||
- defaultLocale | string | ドメイン内のデフォルトロケール。 |
- domain | string | 特定のロケールに関連付けられたドメイン。 |
- http | boolean | undefined | ドメインがHTTPを使用しているかどうかを示します。 |
locales | string[] | undefined | 利用可能なロケールの配列。 |
locale | string | undefined | 現在アクティブなロケール。 |
url | URL | URLオブジェクト。 |
バージョン履歴
| バージョン | 変更内容 |
|---|---|
v15.0.0 | ipおよびgeoを削除。 |