Routing e middleware são dois conceitos importantes no Node.js e na Express estrutura para criar aplicativos da web.
Routing:
- Routing é o processo de determinar como lidar com as solicitações do cliente e responder com os recursos correspondentes no servidor.
- Em Express, podemos definir rotas especificando o método HTTP(GET, POST, PUT, DELETE, etc.) e o caminho da URL correspondente.
- Cada rota pode ter uma ou mais funções de manipulador para executar tarefas como processamento de solicitação, acesso ao banco de dados e envio de respostas ao cliente.
Middleware:
- Middleware são funções que são executadas em uma sequência antes que a solicitação chegue ao manipulador de rota final.
- Eles são usados para executar funcionalidades comuns e lidar com tarefas intermediárias, como autenticação, registro, tratamento de erros, etc.
- Middleware pode ser aplicado a toda a aplicação ou especificado para rotas específicas.
- Cada um middleware recebe os parâmetros req(solicitação) e res(resposta) e pode executar o processamento, passar a solicitação para o próximo middleware ou finalizar o processamento enviando uma resposta ao cliente.
Exemplo combinando Routing e Middleware em Express:
const express = require('express');
const app = express();
// Middleware
const loggerMiddleware =(req, res, next) => {
console.log('A new request has arrived!');
next();
};
// Apply middleware to the entire application
app.use(loggerMiddleware);
// Main route
app.get('/',(req, res) => {
res.send('Welcome to the homepage!');
});
// Another route
app.get('/about',(req, res) => {
res.send('This is the about page!');
});
// Start the server
app.listen(3000,() => {
console.log('Server is listening on port 3000...');
});
Neste exemplo, definimos um costume para registrar cada nova solicitação que chega ao servidor. Isso é aplicado a todo o aplicativo usando o método. Em seguida, definimos duas rotas, uma para a página principal( ) e outra para a página sobre( ). Por fim, iniciamos o servidor e escutamos na porta 3000. middleware loggerMiddleware
middleware app.use()
'/'
'/about'
O será executado para cada solicitação, registrando uma mensagem no console antes de passar a solicitação para o manipulador de rota correspondente ou na sequência. middleware loggerMiddleware
middleware
Essa combinação de routing e middleware nos permite lidar com diferentes solicitações e executar tarefas comuns de maneira eficiente em um Express aplicativo.