【发布时间】:2015-12-16 22:31:30
【问题描述】:
全部:
我对 Express.js 很陌生,当我尝试 .param() 时,一件有趣的事情是:
在 app.js(主服务器文件)中,我有类似的内容:
app.param("id", function(req, res, next, id){
console.log(id+" in app level");
next();
})
app.use("/", routes);
app 是 Express Application 对象,在路由 Router 模块中:
router.param("id", function(req, res, next, id){
console.log(id + " in router level");
next();
})
router.get('/:id', function(req, res, next) {
res.send('respond with a resource');
});
但是当我请求/testUserId时,只有router模块内的param()运行,我以为app.param()会先运行然后router.param(),但实际上不是,谁能帮忙解释一下原因(我必须错过来自 Express 的 API 文档的某些部分)以及如何使两者都运行?
谢谢
【问题讨论】:
标签: node.js express middleware