Node.js - Objet de requête
le req object représente la requête HTTP et possède des propriétés pour la chaîne de requête de requête, les paramètres, le corps, les en-têtes HTTP, etc.
Demander des propriétés d'objet
Voici la liste de quelques propriétés associées à l'objet de requête.
N ° Sr. | Propriétés et description |
---|---|
1 |
req.app Cette propriété contient une référence à l'instance de l'application express qui utilise le middleware. |
2 |
req.baseUrl Le chemin d'URL sur lequel une instance de routeur a été montée. |
3 |
req.body Contient des paires clé-valeur de données soumises dans le corps de la requête. Par défaut, il n'est pas défini et est renseigné lorsque vous utilisez un middleware d'analyse corporelle tel quebody-parser |
4 |
req.cookies Lors de l'utilisation du middleware de l'analyseur de cookies, cette propriété est un objet qui contient les cookies envoyés par la requête. |
5 |
req.fresh Indique si la demande est «fraîche». C'est l'opposé de req.stale. |
6 |
req.hostname Contient le nom d'hôte de l'en-tête HTTP "Host". |
sept |
req.ip L'adresse IP distante de la demande. |
8 |
req.ips Lorsque le paramètre de proxy de confiance est vrai, cette propriété contient un tableau d'adresses IP spécifiées dans l'en-tête de demande «X-Forwarded-For». |
9 |
req.originalUrl Cette propriété ressemble beaucoup à req.url; cependant, il conserve l'URL de la requête d'origine, vous permettant de réécrire librement req.url à des fins de routage interne. |
dix |
req.params Un objet contenant des propriétés mappées aux «paramètres» de l'itinéraire nommé. Par exemple, si vous avez la route / utilisateur /: nom, la propriété "nom" est disponible sous la forme req.params.name. Cet objet est par défaut {}. |
11 |
req.path Contient la partie chemin de l'URL de la demande. |
12 |
req.protocol La chaîne de protocole de demande, "http" ou "https" lorsqu'elle est demandée avec TLS. |
13 |
req.query Un objet contenant une propriété pour chaque paramètre de chaîne de requête dans l'itinéraire. |
14 |
req.route L'itinéraire actuellement correspondant, une chaîne. |
15 |
req.secure Un booléen qui est vrai si une connexion TLS est établie. |
16 |
req.signedCookies Lorsque vous utilisez un middleware d'analyse de cookies, cette propriété contient des cookies signés envoyés par la requête, non signés et prêts à être utilisés. |
17 |
req.stale Indique si la demande est "périmée" et est l'opposé de req.fresh. |
18 |
req.subdomains Un tableau de sous-domaines dans le nom de domaine de la demande. |
19 |
req.xhr Une valeur booléenne qui est vraie si le champ d'en-tête "X-Requested-With" de la demande est "XMLHttpRequest", indiquant que la demande a été émise par une bibliothèque cliente telle que jQuery. |
Demander des méthodes d'objet
req.accepts (types)
req.accepts(types)
Cette méthode vérifie si les types de contenu spécifiés sont acceptables, en fonction du champ d'en-tête HTTP Accept de la demande. Voici quelques exemples -
// Accept: text/html
req.accepts('html');
// => "html"
// Accept: text/*, application/json
req.accepts('html');
// => "html"
req.accepts('text/html');
// => "text/html"
req.get (champ)
req.get(field)
Cette méthode renvoie le champ d'en-tête de requête HTTP spécifié. Voici quelques exemples -
req.get('Content-Type');
// => "text/plain"
req.get('content-type');
// => "text/plain"
req.get('Something');
// => undefined
req.is (type)
req.is(type)
Cette méthode renvoie true si le champ d'en-tête HTTP "Content-Type" de la requête entrante correspond au type MIME spécifié par le paramètre type. Voici quelques exemples -
// With Content-Type: text/html; charset=utf-8
req.is('html');
req.is('text/html');
req.is('text/*');
// => true
req.param (nom [, defaultValue])
req.param(name [, defaultValue])
Cette méthode renvoie la valeur du nom du paramètre lorsqu'il est présent. Voici quelques exemples -
// ?name=tobi
req.param('name')
// => "tobi"
// POST name=tobi
req.param('name')
// => "tobi"
// /user/tobi for /user/:name
req.param('name')
// => "tobi"