1.使用post ,get 中间件定义的路由,如果不加上next参数,那么只执行第一个匹配到的同样路径的路由.
app.get("/",function(req,res,next){
.//TODO
//自动匹配到并执行下一个同路径的路由
next();
})
2.这种中间件定义的方式遇到路由冲突的解决方式:
a.交换位置:具体的往上写,抽象的往下写,这种写法适用于小型的路由不多的项目
b.使用use中间件,use方法是一个一科无限扩充层级的中间件,不像get 和post 只能做路由的精确匹配到对应 的路由
//这里的路由可以接收/admin/dfaf ,/admin/dsafasdf/dfasf 等
app.use('/admin',function(res,req){
//三个获取路由的方法
req.path;// /admin后面的 路由
req.originalUrl;//包含/admin的整个路由
req.baseUrl;// /admin
});
网友评论