"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Propriedades essenciais de solicitação expressa que todo desenvolvedor deve conhecer

Propriedades essenciais de solicitação expressa que todo desenvolvedor deve conhecer

Publicado em 2024-11-08
Navegar:191

ssential Express Request Properties Every Developer Should Know

Ao trabalhar no back-end de projetos, lidar com solicitações e respostas é crucial. Gerenciar essas solicitações com eficiência é essencial para uma comunicação tranquila entre o cliente e o servidor. Aqui estão algumas propriedades de solicitação comuns e importantes com as quais todo desenvolvedor deve estar familiarizado.

1.req.ip

req.ip em Express.js é uma propriedade do objeto de solicitação que fornece o endereço IP do cliente que faz a solicitação. Ele retorna uma string representando o endereço IP do cliente.

Tratamento de proxies:
Por padrão, se o aplicativo estiver atrás de um proxy, req.ip poderá retornar o IP do proxy em vez do IP real do cliente. Para obter o IP do cliente correto, você pode configurar o Express para confiar no proxy definindo proxy confiável.

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

Agora, req.ip retornará o IP correto do cliente mesmo quando estiver atrás de um proxy.

Exemplo:

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

2. requisitos de cookies

Para usar req.cookies, precisamos instalar o pacote chamado cookie-parser middleware. A propriedade é utilizada para obter cookies enviados pelo cliente no cabeçalho Cookies. Os cookies em req.cookies não são assinados, o que significa que não foram modificados ou verificados. Você pode usar isso para dados menos confidenciais

import cookieParser from "cookie-parser";

app.use(cookieParser());

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

3.req.signedCookies

Para usar req.signedCookies, precisamos instalar o pacote chamado cookie-parser middleware. Contém cookies que foram assinados e verificados para garantir que não foram alterados. Os cookies assinados são criptografados com a chave secreta. Os req.signedCookies armazenam apenas os cookies que passam na verificação.

Como definir cookies assinados:
Para definir um cookie assinado, você pode usar a opção assinado: true:

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

Exemplo:

import cookieParser from "cookie-parser";

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

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

4. parâmetros necessários

req.params em Express.js é um objeto que contém parâmetros de rota da URL da solicitação. Os parâmetros de rota são nomeados como espaços reservados no caminho da rota e req.params armazena os valores fornecidos pelo cliente na URL para esses espaços reservados.
Você pode definir uma rota com parâmetros usando dois pontos (:) antes do nome do parâmetro.

Exemplo:

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

5. consulta necessária

req.query em Express.js é um objeto que contém os parâmetros da string de consulta do URL da solicitação. Strings de consulta são pares de valores-chave que vêm depois do ? em uma URL e são usados ​​para passar dados adicionais ao servidor. Várias consultas podem ser passadas usando &.

URL de exemplo:

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

Exemplo:

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. corpo requerido

Contém pares de valores-chave de dados enviados pelo cliente. Por padrão, seu valor é indefinido. Os dados do corpo podem ser preenchidos usando middleware integrado, como express.json e urlencoded ({ estendido: true }), ou middleware externo, como body-parser.

O código a seguir ajuda você a entender

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);
})

Espero que você tenha achado isso útil! Não esqueça de curtir e salvar para referência futura. Boa codificação!

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/atul_thakre_a3ed87610e45f/6-essential-express-request-properties-every-developer-should-know-3ig7?1 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3