Node.js: objeto de solicitud

los req El objeto representa la solicitud HTTP y tiene propiedades para la cadena de consulta de la solicitud, los parámetros, el cuerpo, los encabezados HTTP, etc.

Solicitar propiedades de objeto

A continuación se muestra la lista de algunas propiedades asociadas con el objeto de solicitud.

No Señor. Propiedades y descripción
1

req.app

Esta propiedad contiene una referencia a la instancia de la aplicación express que usa el middleware.

2

req.baseUrl

La ruta de URL en la que se montó una instancia de enrutador.

3

req.body

Contiene pares de datos clave-valor enviados en el cuerpo de la solicitud. De forma predeterminada, no está definido y se rellena cuando utiliza middleware de análisis corporal comobody-parser

4

req.cookies

Cuando se utiliza middleware analizador de cookies, esta propiedad es un objeto que contiene cookies enviadas por la solicitud.

5

req.fresh

Indica si la solicitud es "nueva". Es lo opuesto a req.stale.

6

req.hostname

Contiene el nombre de host del encabezado HTTP "Host".

7

req.ip

La dirección IP remota de la solicitud.

8

req.ips

Cuando la configuración del proxy de confianza es verdadera, esta propiedad contiene una matriz de direcciones IP especificadas en el encabezado de la solicitud "X-Fordered-For".

9

req.originalUrl

Esta propiedad es muy parecida a req.url; sin embargo, conserva la URL de solicitud original, lo que le permite reescribir req.url libremente para propósitos de enrutamiento interno.

10

req.params

Un objeto que contiene propiedades asignadas a los "parámetros" de la ruta nombrada. Por ejemplo, si tiene la ruta / usuario /: nombre, entonces la propiedad "nombre" está disponible como req.params.name. Este objeto tiene el valor predeterminado {}.

11

req.path

Contiene la parte de la ruta de la URL de solicitud.

12

req.protocol

La cadena de protocolo de solicitud, "http" o "https" cuando se solicita con TLS.

13

req.query

Un objeto que contiene una propiedad para cada parámetro de cadena de consulta en la ruta.

14

req.route

La ruta coincidente actualmente, una cadena.

15

req.secure

Un booleano que es verdadero si se establece una conexión TLS.

dieciséis

req.signedCookies

Cuando se usa middleware analizador de cookies, esta propiedad contiene cookies firmadas enviadas por la solicitud, sin firmar y listas para usar.

17

req.stale

Indica si la solicitud está "obsoleta" y es lo opuesto a req.fresh.

18

req.subdomains

Una matriz de subdominios en el nombre de dominio de la solicitud.

19

req.xhr

Un valor booleano que es verdadero si el campo de encabezado "X-Requested-With" de la solicitud es "XMLHttpRequest", lo que indica que la solicitud fue emitida por una biblioteca cliente como jQuery.

Solicitar métodos de objeto

req.accepts (tipos)

req.accepts(types)

Este método verifica si los tipos de contenido especificados son aceptables, según el campo de encabezado Accept HTTP de la solicitud. A continuación se muestran algunos ejemplos:

// Accept: text/html
req.accepts('html');
// => "html"

// Accept: text/*, application/json
req.accepts('html');

// => "html"
req.accepts('text/html');
// => "text/html"

req.get (campo)

req.get(field)

Este método devuelve el campo de encabezado de solicitud HTTP especificado. A continuación se muestran algunos ejemplos:

req.get('Content-Type');
// => "text/plain"

req.get('content-type');
// => "text/plain"

req.get('Something');
// => undefined

req.is (tipo)

req.is(type)

Este método devuelve verdadero si el campo de encabezado HTTP "Content-Type" de la solicitud entrante coincide con el tipo MIME especificado por el parámetro de tipo. A continuación se muestran algunos ejemplos:

// With Content-Type: text/html; charset=utf-8
req.is('html');
req.is('text/html');
req.is('text/*');
// => true

req.param (nombre [, valor predeterminado])

req.param(name [, defaultValue])

Este método devuelve el valor del nombre del parámetro cuando está presente. A continuación se muestran algunos ejemplos:

// ?name=tobi
req.param('name')
// => "tobi"

// POST name=tobi
req.param('name')
// => "tobi"

// /user/tobi for /user/:name 
req.param('name')
// => "tobi"