NextRequest
NextRequest 擴展了 Web Request API,並提供了額外的便利方法。
cookies
讀取或修改請求中的 Set-Cookie
標頭。
set(name, value)
根據給定的名稱,在請求中設定一個具有指定值的 cookie。
get(name)
根據 cookie 名稱,返回該 cookie 的值。如果找不到 cookie,則返回 undefined
。如果找到多個 cookie,則返回第一個。
getAll()
根據 cookie 名稱,返回該 cookie 的所有值。如果未提供名稱,則返回請求中的所有 cookie。
delete(name)
根據 cookie 名稱,從請求中刪除該 cookie。
has(name)
根據 cookie 名稱,如果請求中存在該 cookie 則返回 true
。
clear()
從請求中移除 Set-Cookie
標頭。
nextUrl
擴展了原生的 URL
API,並提供了額外的便利方法,包括 Next.js 特有的屬性。
以下選項可用:
屬性 | 類型 | 描述 |
---|---|---|
basePath | string | URL 的 基礎路徑。 |
buildId | string | undefined | Next.js 應用程式的建置識別碼。可 自訂。 |
pathname | string | URL 的路徑名稱。 |
searchParams | Object | URL 的查詢參數。 |
注意: 頁面路由器中的國際化屬性不適用於應用程式路由器。了解更多關於 應用程式路由器的國際化。
ip
ip
屬性是一個包含請求 IP 位址的字串。此值可由您的託管平台選擇性提供。
須知: 在 Vercel 上,此值預設提供。在其他平台上,您可以使用
X-Forwarded-For
標頭來提供 IP 位址。
geo
geo
屬性是一個包含請求地理資訊的物件。此值可由您的託管平台選擇性提供。
須知: 在 Vercel 上,此值預設提供。在其他平台上,您可以使用
X-Forwarded-For
標頭來提供 IP 位址,然後使用 第三方服務 查詢地理資訊。