userAgent
Вспомогательный модуль userAgent
расширяет Web Request API дополнительными свойствами и методами для взаимодействия с объектом user agent из запроса.
import { NextRequest, NextResponse, userAgent } from 'next/server'
export function middleware(request: NextRequest) {
const url = request.nextUrl
const { device } = userAgent(request)
// device.type может быть: 'mobile', 'tablet', 'console', 'smarttv',
// 'wearable', 'embedded' или undefined (для десктопных браузеров)
const viewport = device.type || 'desktop'
url.searchParams.set('viewport', viewport)
return NextResponse.rewrite(url)
}
import { NextResponse, userAgent } from 'next/server'
export function middleware(request) {
const url = request.nextUrl
const { device } = userAgent(request)
// device.type может быть: 'mobile', 'tablet', 'console', 'smarttv',
// 'wearable', 'embedded' или undefined (для десктопных браузеров)
const viewport = device.type || 'desktop'
url.searchParams.set('viewport', viewport)
return NextResponse.rewrite(url)
}
isBot
Логическое значение, указывающее, поступает ли запрос от известного бота.
browser
Объект, содержащий информацию о браузере, используемом в запросе.
name
: Строка, представляющая название браузера, илиundefined
, если не удалось определить.version
: Строка, представляющая версию браузера, илиundefined
.
device
Объект, содержащий информацию об устройстве, используемом в запросе.
model
: Строка, представляющая модель устройства, илиundefined
.type
: Строка, представляющая тип устройства, напримерconsole
,mobile
,tablet
,smarttv
,wearable
,embedded
илиundefined
.vendor
: Строка, представляющая производителя устройства, илиundefined
.
engine
Объект, содержащий информацию о движке браузера.
name
: Строка, представляющая название движка. Возможные значения:Amaya
,Blink
,EdgeHTML
,Flow
,Gecko
,Goanna
,iCab
,KHTML
,Links
,Lynx
,NetFront
,NetSurf
,Presto
,Tasman
,Trident
,w3m
,WebKit
илиundefined
.version
: Строка, представляющая версию движка, илиundefined
.
os
Объект, содержащий информацию об операционной системе.
name
: Строка, представляющая название ОС, илиundefined
.version
: Строка, представляющая версию ОС, илиundefined
.
cpu
Объект, содержащий информацию об архитектуре процессора.
architecture
: Строка, представляющая архитектуру процессора. Возможные значения:68k
,amd64
,arm
,arm64
,armhf
,avr
,ia32
,ia64
,irix
,irix64
,mips
,mips64
,pa-risc
,ppc
,sparc
,sparc64
илиundefined
.