Imagem do artigo Trabalhando com rotas no ExpressJS: Trabalhando com rotas dinâmicas

7.3. Trabalhando com rotas no ExpressJS: Trabalhando com rotas dinâmicas

Página 49 | Ouça em áudio

Um dos principais recursos do ExpressJS, um dos frameworks mais populares para NodeJS, é o seu sistema de roteamento. As rotas são a espinha dorsal de qualquer aplicativo web e, com o ExpressJS, o processo de criação e gerenciamento de rotas é simplificado e otimizado. Neste capítulo, vamos explorar como trabalhar com rotas no ExpressJS, com ênfase especial em rotas dinâmicas.

O roteamento no ExpressJS é realizado através da definição de rotas, que são essencialmente funções JavaScript que correspondem a determinados URLs. Quando um URL é acessado, a função de rota correspondente é executada. Isso permite que você crie a lógica necessária para lidar com diferentes tipos de solicitações e respostas.

Para começar a trabalhar com rotas, você precisa instanciar um objeto Express e usar seus métodos de rota. Os métodos de rota correspondem aos verbos HTTP, como GET, POST, PUT, DELETE, etc. Por exemplo, para criar uma rota GET simples que corresponda ao URL "/", você faria algo assim:


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

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(3000, () => {
  console.log('App listening on port 3000!');
});

Aqui, nós criamos uma rota que corresponde ao URL "/" e responde com "Hello World!" quando esse URL é acessado através de uma solicitação GET. O método app.get() recebe dois argumentos: o URL e uma função de retorno de chamada que é executada quando o URL é acessado. A função de retorno de chamada recebe dois argumentos: um objeto de solicitação (req) e um objeto de resposta (res).

Agora, vamos falar sobre rotas dinâmicas. As rotas dinâmicas são rotas que contêm parâmetros de rota. Os parâmetros de rota são partes do URL que são dinâmicas e podem variar. Eles são definidos usando dois pontos seguidos por um nome, como "/users/:userId". O ExpressJS automaticamente extrai esses parâmetros de rota e os torna disponíveis no objeto de solicitação.

Por exemplo, vamos criar uma rota dinâmica que corresponda a URLs como "/users/1", "/users/2", etc:


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

Aqui, ":userId" é um parâmetro de rota. Quando essa rota é acessada, o ExpressJS extrai o valor do parâmetro de rota e o torna disponível como uma propriedade do objeto req.params. Então, se você acessar "/users/1", a resposta será "User ID is: 1". Se você acessar "/users/42", a resposta será "User ID is: 42", e assim por diante.

As rotas dinâmicas são incrivelmente úteis e permitem que você crie aplicativos web complexos e flexíveis com menos código. Você pode ter qualquer número de parâmetros de rota em uma única rota, e você pode acessá-los todos através do objeto req.params.

Em conclusão, o sistema de roteamento do ExpressJS é uma ferramenta poderosa que permite criar aplicativos web complexos com facilidade. As rotas dinâmicas, em particular, são um recurso importante que permite criar URLs flexíveis que podem lidar com uma variedade de situações diferentes.

Na próxima seção, vamos explorar mais recursos do ExpressJS, incluindo o middleware e como lidar com erros. Fique ligado!

Agora responda o exercício sobre o conteúdo:

Qual é a principal utilidade das rotas dinâmicas no framework ExpressJS para NodeJS?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Trabalhando com rotas no ExpressJS: Utilizando middlewares nas rotas

Próxima página do Ebook Gratuito:

50Trabalhando com rotas no ExpressJS: Utilizando middlewares nas rotas

3 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto