Понимание разницы между express() и express.Router() в Express.js

В среде Express.js и express(), и express.Router()используются для создания веб-приложений. Позвольте мне объяснить разницу между ними:

  1. express(): это функция верхнего уровня платформы Express.js, которая создает экземпляр приложения Express. Когда вы вызываете express(), вы получаете доступ к основным функциям Express, таким как промежуточное программное обеспечение, маршрутизация и обработка HTTP-запросов и ответов. Вы можете использовать этот экземпляр для определения маршрутов, настройки промежуточного программного обеспечения и настройки вашего приложения.

  2. express.Router(): это функция промежуточного программного обеспечения, которая позволяет создавать модульные монтируемые обработчики маршрутов. Он предоставляет возможность организовать ваши маршруты в отдельные файлы или модули. С помощью express.Router()вы можете определять маршруты и обрабатывать запросы для определенных путей URL. Маршрутизатор можно подключить как промежуточное программное обеспечение с помощью метода app.use(), что позволит вам создать модульную и организованную структуру маршрутов вашего приложения.

Подводя итог: express()создает экземпляр приложения Express, а express.Router()позволяет создавать модульные обработчики маршрутов, которые можно монтировать внутри Экспресс-приложение.

Вот некоторые часто используемые методы в Express.js:

  1. app.get(), app.post(), app.put(), app.delete(): эти методы определяют маршруты для обработки HTTP-запросов GET, POST, PUT и DELETE соответственно.

  2. app.use(): используется для монтирования функций промежуточного программного обеспечения, которые выполняются для каждого запроса. Функции промежуточного программного обеспечения могут выполнять такие задачи, как анализ тела запроса, ведение журнала, обработка ошибок и аутентификация.

  3. app.set(): используется для установки различных настроек приложения, таких как механизм представления, номер порта и глобальные переменные.

  4. app.listen(): этот метод запускает приложение Express и заставляет его прослушивать указанный порт на предмет входящих HTTP-запросов.

  5. app.all(): обрабатывает все методы HTTP (GET, POST, PUT, DELETE и т. д.) для определенного маршрута.

  6. app.route(): предоставляет ярлык для создания нескольких обработчиков маршрутов для одного URL-пути.

  7. router.get(), router.post(), router.put(), router. delete(): эти методы используются в экземпляре маршрутизатора (express.Router()) для определения обработчиков маршрутов для определенных методов HTTP.

  8. router.use(): используется для монтирования функций промежуточного программного обеспечения внутри маршрутизатора.

  9. router.param(): определяет промежуточное программное обеспечение, которое запускается для определенного параметра в пути URL.

  10. router.route(): создает цепочки обработчиков маршрутов для одного URL-пути.