"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Propriétés essentielles de la demande express que tout développeur devrait connaître

Propriétés essentielles de la demande express que tout développeur devrait connaître

Publié le 2024-11-08
Parcourir:419

ssential Express Request Properties Every Developer Should Know

Lorsque vous travaillez sur le backend des projets, la gestion des demandes et des réponses est cruciale. La gestion efficace de ces requêtes est essentielle pour une communication fluide entre le client et le serveur. Voici quelques propriétés de requête courantes et importantes que tout développeur devrait connaître.

1. req.ip

req.ip dans Express.js est une propriété de l'objet de requête qui fournit l'adresse IP du client effectuant la demande. Il renvoie une chaîne représentant l'adresse IP du client.

Gestion des proxys :
Par défaut, si l'application se trouve derrière un proxy, req.ip peut renvoyer l'adresse IP du proxy plutôt que l'adresse IP du client réel. Pour obtenir l'adresse IP client correcte, vous pouvez configurer Express pour qu'il fasse confiance au proxy en définissant un proxy de confiance.

app.set("trust proxy", true);

Désormais, req.ip renverra l'adresse IP correcte du client même derrière un proxy.

Exemple:

app.get('/', (req, res) => {
  console.log(req.ip);  // Logs the client's IP address
  res.send(`Your IP address is ${req.ip}`);
});

2. cookies requis

Pour utiliser req.cookies, nous devons installer le package appelé middleware cookie-parser. La propriété est utilisée pour obtenir les cookies envoyés par le client dans l'en-tête Cookies. Les cookies contenus dans req.cookies ne sont pas signés, ce qui signifie qu'ils n'ont pas été modifiés ou vérifiés. Vous pouvez l'utiliser pour des données moins sensibles

import cookieParser from "cookie-parser";

app.use(cookieParser());

app.get('/example', (req, res) => {
  console.log(req.cookies);  // { cookieName: 'cookieValue' }
});

3. req.signedCookies

Pour utiliser req.signedCookies, nous devons installer le package appelé middleware cookie-parser. Celui-ci contient des cookies qui ont été signés et vérifiés pour garantir qu'ils n'ont pas été modifiés. Les cookies signés sont cryptés avec la clé secrète. Les req.signedCookies stockent uniquement les cookies qui réussissent la vérification.

Comment définir des cookies signés :
Pour définir un cookie signé, vous pouvez utiliser l'option signé: true :

res.cookie('signedCookieName', 'signedValue', { signed: true });

Exemple:

import cookieParser from "cookie-parser";

app.use(cookieParser('your-secret-key'));

app.get('/example', (req, res) => {
  console.log(req.signedCookies);  // { signedCookieName: 'signedValue' }
});

4. paramètres requis

req.params dans Express.js est un objet qui contient les paramètres de route de l'URL de la requête. Les paramètres de route sont nommés espaces réservés dans le chemin de la route, et req.params stocke les valeurs fournies par le client dans l'URL pour ces espaces réservés.
Vous pouvez définir un itinéraire avec des paramètres en utilisant deux points (:) avant le nom du paramètre.

Exemple:

app.get('/users/:userId', (req, res) => {
  console.log(req.params); // { userId: 'valueFromURL' }
  res.send(`User ID is ${req.params.userId}`);
});

5. req.requête

req.query dans Express.js est un objet qui contient les paramètres de chaîne de requête de l'URL de la requête. Les chaînes de requête sont des paires clé-valeur qui suivent le ? dans une URL et sont utilisés pour transmettre des données supplémentaires au serveur. Plusieurs requêtes peuvent être transmises à l'aide de &.

Exemple d'URL :

http://example.com/search?term=flowers&sort=asc

Exemple:

app.get('/search', (req, res) => {
  console.log(req.query);  // { term: 'flowers', sort: 'asc' }
  res.send(`Search term: ${req.query.term}, Sort order: ${req.query.sort}`);
});

6. corps requis

Il contient des paires clé-valeur de données envoyées par le client. Par défaut, sa valeur n'est pas définie. Les données corporelles peuvent être renseignées à l'aide d'un middleware intégré tel que express.json et urlencoded({ extend: true }), ou d'un middleware externe comme body-parser.

Le code suivant vous aide à comprendre

import express from "express";

const app = express();

app.use(express.json());
app.use(express.urlencoded({ extended: true }));

app.get("/user", (req, res) => {
    const user  = req.body;
    consolo.log(user);
    res.send(user);
})

J'espère que cela vous a été utile ! N'oubliez pas d'aimer et de sauvegarder pour référence future. Bon codage !

Déclaration de sortie Cet article est reproduit sur : https://dev.to/atul_thakre_a3ed87610e45f/6-essential-express-request-properties-every-developer-should-know-3ig7?1 En cas de violation, veuillez contacter [email protected] pour le supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3