Express.js свойство app.router

Опубликовано: 1 Декабря, 2021

Свойство app.router Express.js было введено в Express 4. Оно помогает нам создавать модульные монтируемые обработчики маршрутов. Он предоставляет нам множество функций, таких как расширяет эту маршрутизацию для обработки валидации, обработки ошибок 404 или других ошибок и т. Д. Это помогает нам организовать нашу файловую структуру для нашего серверного программирования.

Зачем использовать express.Router?

Это помогает нам управлять сотнями маршрутов, которые создаются в проекте на стороне сервера, разделяя их на отдельные файлы. Это помогает в базовой маршрутизации промежуточного программного обеспечения и обработке ошибок 404. Используя express.Router, вся папка, содержащая все зависимости, файлы, маршруты и т. Д., Хорошо структурирована и понятна любому.

Установка Экспресс-модуля

После запуска npm init и создания файла package.json пора установить нашу зависимость, то есть Express.

1. Вы можете перейти по этой ссылке и загрузить с помощью следующей команды:

 npm install express - сохранить

2. После установки экспресс-версии вы можете проверить свою экспресс-версию в командной строке с помощью следующей команды:

 npm версия экспресс

3. После установки необходимой зависимости создайте файл app.js с помощью терминала. Чтобы запустить этот файл, вам необходимо выполнить следующее:

 узел app.js

Каталог проекта: после создания app.js создайте отдельную папку с именем routes, как показано ниже:

Это будет структура проекта после создания и установки файлов и пакетов. Внутри маршрутов будет два файла, как показано ниже:

Имя файла: app.js

Javascript

// Requiring module
const express = require("express");
  
// Creating express object
const app=express();
  
// Middlewares
app.use(require("./routes/introduction.js"));
app.use(require("./routes/computer.js"));
  
// Server setup
app.listen(3000, function() { 
   console.log("Server listening on port 3000"); 
});

Мы потребовали два файла , которые мы создали внутри маршрутов , т.е. computer.js и introduction.js внутри нашего app.js файла, используя следующий код:

 // Синтаксис
app.use (требуется ('Путь к файлу'))

// Выполнение
app.use (require ('./ routes / Introduction.js'));
app.use (require ('./ routes / computer.js'));

Имя файла: Introduction.js

Javascript

// Requiring module
const express = require( 'express' );
// Creating router object
const router = express.Router();
// Handling request
router.get( '/introduction' , (req,res) => {
console.log( 'Opening introduction.js' );
res.send( 'Welcome to geeksforgeeks!' );
});
// Exporting router object
module.exports = router;

Имя файла: computer.js

Javascript

// Requiring module
const express = require( 'express' );
// Creating router object
const router = express.Router();
// Handling request
router.get( '/computer' , (req,res) => {
console.log( 'Opening computer.js' );
res.send( 'This is a computer science portal' );
});
// Exporting router object
module.exports = router;

Запустите файл app.js, используя следующую команду:

 узел app.js

Выход:

 Сервер прослушивает порт 3000

Теперь откройте браузер и перейдите по адресу http: // localhost: 3000 / Introduction и http: // localhost: 3000 / computer. Затем вы увидите следующий вывод на экране вашего терминала:

 Сервер прослушивает порт 3000
Открытие Introduction.js
Открытие computer.js

Работает: оба маршрута были открыты в браузере, поэтому console.log () напечатала следующие операторы при успешном открытии маршрутов. В браузере оба маршрута будут отображать разные результаты, как показано ниже:

Для http: // localhost: 3000 / Introduction будет показан следующий вывод:

 Добро пожаловать в geeksforgeeks!

Для http: // localhost: 3000 / computer будет показан следующий вывод:

 Это портал информатики