NextResponse
NextResponse 擴展了 Web Response API,並提供了額外的便利方法。
cookies
讀取或修改回應中的 Set-Cookie
標頭。
set(name, value)
根據給定的名稱,在回應中設定一個具有對應值的 cookie。
get(name)
根據 cookie 名稱,回傳該 cookie 的值。如果找不到 cookie,則回傳 undefined
。如果找到多個 cookie,則回傳第一個。
getAll()
根據 cookie 名稱,回傳該 cookie 的所有值。如果未提供名稱,則回傳回應中的所有 cookie。
delete(name)
根據 cookie 名稱,從回應中刪除該 cookie。
json()
產生一個包含給定 JSON 主體的回應。
redirect()
產生一個重新導向至指定 URL 的回應。
URL 可以在用於 NextResponse.redirect()
方法之前被建立和修改。例如,您可以使用 request.nextUrl
屬性來取得當前 URL,然後修改它以重新導向至不同的 URL。
rewrite()
產生一個重寫 (代理) 給定 URL 的回應,同時保留原始 URL。
next()
next()
方法在中間件中非常有用,因為它允許您提前回傳並繼續路由。
您也可以在產生回應時轉發 headers
: