Como definir rotas no Express.js?

No Express.js, as rotas são usadas para definir os endpoints de uma API, permitindo que o servidor responda a diferentes requisições HTTP.

Como definir rotas no Express.js?

No Express.js, as rotas são responsáveis por mapear URLs e executar ações específicas para cada requisição HTTP. A definição correta de rotas facilita a organização e manutenção da API.

Criando uma rota básica

Para definir rotas no Express.js, usamos os métodos HTTP como GET, POST, PUT e DELETE.

const express = require('express');
const app = express();

app.get('/', (req, res) => {
    res.send('Rota principal');
});

app.listen(3000, () => {
    console.log('Servidor rodando na porta 3000');
});

Criando múltiplas rotas

Podemos definir várias rotas para diferentes operações:

app.get('/usuarios', (req, res) => {
    res.send('Lista de usuários');
});

app.post('/usuarios', (req, res) => {
    res.send('Criando um novo usuário');
});

Usando parâmetros de rota

Podemos capturar valores dinâmicos na URL usando :.

app.get('/usuarios/:id', (req, res) => {
    const id = req.params.id;
    res.send(`Usuário com ID: ${id}`);
});

Organizando rotas em arquivos separados

Para manter o código organizado, podemos estruturar as rotas em arquivos dedicados:

Arquivo routes/usuarios.js

const express = require('express');
const router = express.Router();

router.get('/', (req, res) => {
    res.send('Lista de usuários');
});

router.get('/:id', (req, res) => {
    res.send(`Usuário com ID: ${req.params.id}`);
});

module.exports = router;

Arquivo server.js

const express = require('express');
const app = express();
const usuariosRouter = require('./routes/usuarios');

app.use('/usuarios', usuariosRouter);

app.listen(3000, () => {
    console.log('Servidor rodando na porta 3000');
});

Conclusão

Definir rotas no Express.js é um dos primeiros passos para criar APIs organizadas e eficientes. Podemos utilizar rotas simples, parâmetros dinâmicos e separação de arquivos para manter o código limpo e modularizado.

O conceito de rotas no desenvolvimento de APIs é fundamental para estruturar aplicações modernas. No Express.js, a facilidade na definição e organização de rotas permite que desenvolvedores criem APIs escaláveis e bem organizadas.

Muitos frameworks modernos, como NestJS e AdonisJS, se inspiram na simplicidade do Express para oferecer sistemas de roteamento mais avançados. Saber estruturar rotas corretamente melhora a manutenção do código e permite que a API cresça de maneira eficiente.

Algumas aplicações:

  • Criação de APIs RESTful organizadas
  • Gerenciamento de usuários e autenticação
  • Integração com bancos de dados
  • Criação de microservices
  • Estruturação modular de aplicações Node.js

Dicas para quem está começando

  • Separe as rotas em arquivos distintos para melhor organização.
  • Utilize app.use('/rota', router) para modularizar rotas.
  • Use req.params para capturar parâmetros dinâmicos na URL.
  • Para lidar com grandes projetos, implemente um roteador com express.Router().
  • Teste suas rotas com ferramentas como Postman ou Insomnia.

Contribuições de Henrique Almeida

Compartilhe este tutorial: Como definir rotas no Express.js?

Compartilhe este tutorial

Continue aprendendo:

Como criar um servidor básico com Express.js?

Criar um servidor básico com Express.js permite rodar aplicações web e APIs de forma rápida e eficiente usando Node.js.

Tutorial anterior

Como enviar respostas JSON em uma API Node.js?

No Express.js, podemos enviar respostas JSON para APIs usando o método res.json(), garantindo comunicação estruturada entre cliente e servidor.

Próximo tutorial