Express.js app.router 属性
Express.js app.router属性是在 Express 4 中引入的。它帮助我们创建模块化、可挂载的路由处理程序。它为我们提供了许多功能,例如扩展此路由以处理验证、处理 404 或其他错误等。它帮助我们为服务器端编程组织文件结构。
使用express.Router需要什么?
它可以帮助我们管理在服务器端项目中创建的数百条路由,方法是将它们分成单独的文件。它有助于基本的中间件路由和处理 404 错误。使用 express.Router,包含所有依赖项、文件、路由等的整个文件夹结构良好,任何人都易于理解。
快速模块的安装
运行npm init并创建 package.json 文件后,是时候安装我们的依赖项,即 Express。
1.您可以访问此链接并使用以下命令进行下载:
npm install express --save
2. 安装 express 后,您可以在命令提示符下使用以下命令查看您的 express 版本:
npm version express
3. 安装好需要的依赖后,使用终端创建一个app.js文件。为了运行此文件,您需要执行以下操作:
node 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');
});
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;
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 文件中需要我们在路由中创建的两个文件,即computer.js和Introduction.js :
// Syntax
app.use(require('Filepath'))
// Implementation
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文件:
node app.js
输出:
Server listening on port 3000
现在打开浏览器并访问http://localhost:3000/introduction和http://localhost:3000/computer,然后您将在终端屏幕上看到以下输出:
Server listening on port 3000
Opening introduction.js
Opening computer.js
工作:两条路由都已在浏览器中打开,因此console.log()打印成功打开路由的以下语句。在浏览器上,两条路由都会显示不同的输出,如下所示:
对于http://localhost:3000/introduction ,将显示以下输出:
Welcome to geeksforgeeks!
对于http://localhost:3000/computer ,将显示以下输出:
This is a computer science portal