Путеводитель по Routing и Middleware внутри Express

Routing и middleware являются двумя важными концепциями в Node.js и Express фреймворке для создания веб-приложений.

Routing:

  • Routing это процесс определения того, как обрабатывать запросы от клиента и отвечать соответствующими ресурсами на сервере.
  • В Express, мы можем определить маршруты, указав метод HTTP(GET, POST, PUT, DELETE и т. д.) и соответствующий путь URL.
  • Каждый маршрут может иметь одну или несколько функций-обработчиков для выполнения таких задач, как обработка запросов, доступ к базе данных и отправка ответов клиенту.

Middleware:

  • Middleware — это функции, которые выполняются в последовательности до того, как запрос достигнет конечного обработчика маршрута.
  • Они используются для выполнения общих функций и обработки промежуточных задач, таких как аутентификация, ведение журнала, обработка ошибок и т. д.
  • Middleware могут быть применены ко всему приложению или указаны для определенных маршрутов.
  • Каждый middleware получает параметры req(запрос) и res(ответ) и может выполнять обработку, передавать запрос следующему middleware или завершать обработку, отправляя ответ клиенту.

Пример объединения Routing and Middleware in 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...');  
});  

В этом примере мы определили обычай для регистрации каждого нового запроса, поступающего на сервер. Это применяется ко всему приложению с помощью метода. Затем мы определили два маршрута: один для главной страницы( ), а другой для страницы «О нас»( ). Наконец, мы запускаем сервер и слушаем порт 3000. middleware loggerMiddleware middleware app.use() '/' '/about'

Будет выполняться для каждого запроса, записывая сообщение в консоль перед передачей запроса соответствующему обработчику маршрута или в последовательности. middleware loggerMiddleware middleware

Эта комбинация routing и middleware позволяет нам обрабатывать различные запросы и эффективно выполнять общие задачи в Express приложении.