虽然可以通过app.get和app.post方法来创建路由了,但是在真实的项目中,路由可能很多。
不可能将所有的路由都罗列在同一个文件中。
所以在Express中为了解决这个问题,提供了模块化路由。
我们可以根据某种条件将路由进行分类。将不同的路由放置在不同的模块中。
实现
下面看一下模块化路由的基础代码
打开app.js
//引入express框架const express = require('express');//创建网站服务器const app = express();//创建路由对象const home = express.Router();//为路由对象匹配请求路径app.use('/home',home);//创建二级路由home.get('/index',(req,res) =>{ res.send("公众号:霸道的程序猿")})app.listen(3000, function () { console.log('Example app listening on port 3000!')})
然后就可以通过
http://localhost:3000/home/index
来访问模块化的路由了
由此,可以使用再复杂点的模块化路由。
分别新建home.js和admin.js
home.js
//引入express框架const express = require('express');const home = express.Router();home.get('/index',(req,res)=>{ res.send("这里是home页面");});module.exports = home;
admin.js
//引入express框架const express = require('express');const admin = express.Router();admin.get('/index',(req,res)=>{ res.send("这里是admin页面");});module.exports = admin;
然后在app.js中
//引入express框架const express = require('express');//创建网站服务器const app = express();const home = require('./home.js');const admin = require('./admin.js');app.use('/home',home);app.use('/admin',admin);app.listen(3000, function () { console.log('Example app listening on port 3000!')})
启动项目
node app.js
访问
http://localhost:3000/home/index
然后再访问
http://localhost:3000/admin/index