在Express中仅为某些路由运行中间件的模式

什么是configuration我的中间件,以便只运行某些端点的最佳方式?

最好将中间件逐个添加到每个端点还是有更好的方法来创build可以处理它的configuration?

您可以根据需要在路线中添加尽可能多的function:

例如,使用bodyParser中间件的具体路线可以这样做:

 app.get('/page/:id?/:page?', bodyParser.urlencoded({ extended: false, limit: '50mb' }), function (req, res) { ..... }); 

请阅读中间件文档中的更多内容: http : //expressjs.com/guide/using-middleware.html#middleware.router

最好的方法是使用快速组路线在这里find它,然后创build一个用于实例化的中间件

 var loginMiddelware = function(req,res,next){ if(req.session.user){ next(); }else{ res.redirect('/login'); } } 

而这个middelware在路由组中使用就像

 app.group("/dashboard",(router) => { router.use(loginMiddelware); router.get('/', dashboardController.index); //url is /dashboard/ router.get('/profile', dashboardController.profile); //url is /dashboard/profile }); 

希望对你有效。