//今天学习一下express框架里面路由的理解和使用
一、路由(router)是什么
//百度百科的解释 => 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程。
在express里面理解路由:从根目录文件到子目录文件的路径指向
二、路由的使用
01.首先需要一个根目录
//创建一个主路由
const express = require("express")
const app = express()
app.listen(3000)
//这里服务器拦截了所有请求,并且给request请求标题设置为index.js
app.all("*",(req,res,next)=>{
req.title = "index.js"
//这里使用了next()函数,具有管道的作用(将请求继续往下执行,不会在这里中断)
next()
})
//主入口上面通过安装路由 使用方法 => app.use('地址',router);
//当服务器监听到前端在请求/api/a的 接口时 会导入./toutes/a.js模块并执行
app.use("/api/a",require("./routes/a.js"))
app.get("/reg",(req,res)=>{
console.log("reg===>",req.title)
res.end()
})
02.实现子路由
// 1. 创建路由
let express = require("express")
//使用路由需要express框架的router模块,这里导入即可
let router = express.Router();
//这里服务器拦截了所有请求,并且给这里的所有request请求标题设置为a.js
router.all("*",(req,res,next)=>{
req.title = "a.js"
console.log("-----进入a.js里面的all方法了-------")
next()
})
//2 路由处理响应
// router.响应API(地址, 处理函数)
router.get("/",(req,res,next)=>{
console.log("这是a.js文件里面的/api/a哦....")
res.end()
})
//3. 这里需要导出路由 以便主路由导入使用
module.exports = router;
三、总结
路由的实现是为了方便代码逻辑分层,以便于后期阅读维护,如果不考虑这些,写在一个js文件里面实现业务是没有问题的
//这就像你写一个htm页面,将所有的页面都放在一个html文件里面是没有问题的,但是后期维护修改是很头大的一件事情。