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アプリケーションのビルド識別子。カスタマイズ可能。 |
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 が削除。 |