Метод Express.js app.router ()

Опубликовано: 26 Июля, 2021

Express.js - это гибкая веб-платформа Node.js, которая предоставляет набор функций для мобильных и веб-приложений. В Express есть различные методы, предоставляемые многими разработчиками, и одним из методов в экспрессе является Router, который используется для перенаправления пользователя на разные страницы базы веб-сайта по запросу.

Синтаксис:

 express.Router ([параметры]);

Параметр: эта функция принимает следующие параметры:

  • caseSensitive: включает чувствительность к регистру. Это означает, что если маршрут - «/ contact», это не означает, что он совпадает с «/ Contact», «/ contact» и т. д. по умолчанию. Он игнорирует чувствительность к регистру.
  • mergeParams: эта функция доступна в экспресс-версии 4.5.0 и выше. Вам нужно передать mergeParams как true, если вы хотите получить доступ к параметрам из родительского маршрута через дочерний маршрут.
  • strict: он включает строгую маршрутизацию. Это означает, что если маршрут «/ about», это не означает, что он такой же, как «/ about /» по умолчанию, это наоборот.

Настройка проекта и установка модуля:

Шаг 1. Вы можете перейти по ссылке «Установить экспресс-модуль». Вы можете установить этот пакет с помощью этой команды.

npm установить экспресс

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

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

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

 узел index.js

Структура проекта: это будет выглядеть следующим образом.

Структура проекта

Имя файла- index.js:

Javascript




// Requiring module
const express = require( 'express' );
const app = express();
// Port number
const port = process.env.PORT || 4000;
// import router which is exported
// in app.js file
const route = require( './routes/app.js' );
// When a request comes from /result
// route.It divert to app.js
app.use( '/result' , route);
var visit_link = "<a" + " href=" + "/result"
+ 'style="color:green;"'
+ '"text-decoration:none;"'
+ '"text-size:20px" + ">"'
+ "Hello Geeks" + "</a>"
+ "<br> <br> Click Hello Geeks" ;
// Handling GET Request '/'
app.get( '/' , function (req, res) {
// Sending the html code as a string
res.send(visit_link);
});
// Server setup
app.listen(port, function (req, res) {
console.log( "listen" );
});

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

В этом примере проекта, когда пользователь щелкает Hello Geeks, он перенаправляется на http: // locahost: 4000 / result. Когда запрос содержит маршрут '/ result', сервер запускает файл app.js, который находится внутри папки маршрутов.

Имя файла app.js

Javascript




// Requiring module
const app = require("express")
  
// Initiate router
const router = app.Router();
  
// Path Module
const path = require("path");
  
// Handling GET Request
router.get("/",function(req,res) {
  res.sendFile(path.dirname(__dirname)
  + "/index.html")
})
  
// Exporting router variable
module.exports = router;

Имя файла- index.html:

После полного выполнения файла app.js он отправляет HTML-файл по этому конкретному маршруту и показывает его в браузере.

HTML




<!DOCTYPE html>
< html >
< body >
< img style="margin-left:auto; margin-right:auto;
display: block;width: 50%;" src =
alt = "geeksforgeeks" width = "500" height = "250" >
</ body >
</ html >

Шаг для запуска приложения: запустите файл index.js , используя следующую команду:

 узел index.js

Вывод: Теперь откройте браузер и перейдите по адресу http: // localhost: 4000 / , вы получите следующий результат.

Рабочая модель этого проекта

Ссылка: https://expressjs.com/en/5x/api.html#express.router