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 не найдена, возвращается undefined
. Если найдено несколько cookie, возвращается первая.
// Для входящего запроса /home
// { name: 'show-banner', value: 'false', Path: '/home' }
request.cookies.get('show-banner')
getAll()
Возвращает значения 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 с указанным именем из запроса.
// Возвращает true при успешном удалении, false если ничего не удалено
request.cookies.delete('experiments')
has(name)
Проверяет наличие cookie с указанным именем в запросе.
// Возвращает true если cookie существует, false если нет
request.cookies.has('experiments')
clear()
Удаляет заголовок Set-Cookie
из запроса.
request.cookies.clear()
nextUrl
Расширяет нативный API URL
дополнительными удобными методами, включая свойства, специфичные для Next.js.
// Для запроса /home, pathname будет /home
request.nextUrl.pathname
// Для запроса /home?name=lee, searchParams будет { 'name': 'lee' }
request.nextUrl.searchParams
История версий
Версия | Изменения |
---|---|
v13.0.0 | Добавлен useSearchParams . |