Como lidar com requisições GET e POST no Express.js?
No Express.js, as requisições GET e POST são amplamente utilizadas para interagir com APIs e manipular dados. A requisição GET é usada para recuperar informações, enquanto a POST é usada para enviar dados ao servidor.
1. Criando uma rota GET
Uma rota GET é utilizada para buscar informações sem modificar o servidor.
const express = require('express');
const app = express();
app.get('/usuarios', (req, res) => {
res.json({ mensagem: 'Lista de usuários' });
});
app.listen(3000, () => {
console.log('Servidor rodando na porta 3000');
});
2. Capturando parâmetros na URL (Query Params e Route Params)
Os parâmetros podem ser passados via query params ou route params.
Exemplo com query params:
app.get('/pesquisa', (req, res) => {
const termo = req.query.termo;
res.json({ mensagem: `Resultados para: ${termo}` });
});
Se acessarmos http://localhost:3000/pesquisa?termo=express
, o JSON retornado será:
{
"mensagem": "Resultados para: express"
}
Exemplo com route params:
app.get('/usuarios/:id', (req, res) => {
const id = req.params.id;
res.json({ mensagem: `Usuário com ID: ${id}` });
});
Acessando http://localhost:3000/usuarios/10
, a resposta será:
{
"mensagem": "Usuário com ID: 10"
}
3. Criando uma rota POST
A requisição POST é usada para enviar dados ao servidor. Para capturar o body, precisamos do middleware express.json()
:
app.use(express.json());
app.post('/usuarios', (req, res) => {
const { nome, email } = req.body;
res.json({ mensagem: 'Usuário criado', nome, email });
});
Se enviarmos um JSON via Postman ou Insomnia para http://localhost:3000/usuarios
:
{
"nome": "João",
"email": "joao@email.com"
}
O servidor responderá:
{
"mensagem": "Usuário criado",
"nome": "João",
"email": "joao@email.com"
}
Conclusão
O Express.js facilita a manipulação de requisições GET e POST, permitindo recuperar e enviar dados facilmente. Com o uso de query params, route params e body, conseguimos criar APIs eficientes e escaláveis.
Por que entender GET e POST é essencial no desenvolvimento de APIs?
As requisições HTTP são a base da comunicação entre clientes e servidores. No Express.js, os métodos GET e POST são os mais comuns, mas também existem outros como PUT, DELETE e PATCH.
O uso correto dessas requisições melhora a organização da API, garantindo que cada endpoint tenha um propósito bem definido. Por isso, é essencial entender como capturar dados enviados pelo cliente e estruturá-los corretamente dentro da aplicação.
Frameworks modernos, como NestJS e Next.js, utilizam esses conceitos internamente para oferecer soluções mais robustas e organizadas.
Algumas aplicações:
- Consulta de dados via GET
- Envio de formulários com POST
- Criação de endpoints para autenticação
- Recuperação de informações com parâmetros
- Integração com bancos de dados
Dicas para quem está começando
- Use
express.json()
para processar o corpo das requisições POST. - Para capturar query params, utilize
req.query
. - Utilize
req.params
para acessar parâmetros dinâmicos na URL. - Teste suas requisições com ferramentas como Postman ou Insomnia.
- Responda sempre com JSON para manter a padronização da API.
Contribuições de Lucas Fernandes