userAgent

El helper userAgent extiende la API de Web Request con propiedades y métodos adicionales para interactuar con el objeto user agent de la solicitud.

import { NextRequest, NextResponse, userAgent } from 'next/server'

export function middleware(request: NextRequest) {
  const url = request.nextUrl
  const { device } = userAgent(request)

  // device.type puede ser: 'mobile', 'tablet', 'console', 'smarttv',
  // 'wearable', 'embedded', o undefined (para navegadores de escritorio)
  const viewport = device.type || 'desktop'

  url.searchParams.set('viewport', viewport)
  return NextResponse.rewrite(url)
}

isBot

Un booleano que indica si la solicitud proviene de un bot conocido.

browser

Un objeto que contiene información sobre el navegador utilizado en la solicitud.

  • name: Una cadena que representa el nombre del navegador, o undefined si no es identificable.
  • version: Una cadena que representa la versión del navegador, o undefined.

device

Un objeto que contiene información sobre el dispositivo utilizado en la solicitud.

  • model: Una cadena que representa el modelo del dispositivo, o undefined.
  • type: Una cadena que representa el tipo de dispositivo, como console, mobile, tablet, smarttv, wearable, embedded, o undefined.
  • vendor: Una cadena que representa el fabricante del dispositivo, o undefined.

engine

Un objeto que contiene información sobre el motor del navegador.

  • name: Una cadena que representa el nombre del motor. Los valores posibles incluyen: Amaya, Blink, EdgeHTML, Flow, Gecko, Goanna, iCab, KHTML, Links, Lynx, NetFront, NetSurf, Presto, Tasman, Trident, w3m, WebKit o undefined.
  • version: Una cadena que representa la versión del motor, o undefined.

os

Un objeto que contiene información sobre el sistema operativo.

  • name: Una cadena que representa el nombre del SO, o undefined.
  • version: Una cadena que representa la versión del SO, o undefined.

cpu

Un objeto que contiene información sobre la arquitectura de la CPU.

  • architecture: Una cadena que representa la arquitectura de la CPU. Los valores posibles incluyen: 68k, amd64, arm, arm64, armhf, avr, ia32, ia64, irix, irix64, mips, mips64, pa-risc, ppc, sparc, sparc64 o undefined

On this page