【发布时间】:2015-05-30 01:39:13
【问题描述】:
在documentation 中写道:
您可以提供多个回调函数,其行为类似于中间件,除了这些回调可以调用 next('route') 以绕过剩余的路由回调。您可以使用此机制对路由施加先决条件,然后如果没有理由继续当前路由,则将控制权传递给后续路由。
这是否意味着如果我写这样的路线:
app.get('/', function(req, res, next) {
if (!req.params.id) {
res.statusCode(400).send({error: "id parameter is required"});
next('route');
} else {
next();
}
}, function(req, res) {
res.send({something: 'something'})
});
而params.id 是undefined,则不会执行下一个路由,但如果它存在,它会执行吗?
基本上,编码/命名约定让我有点困惑。为什么不用next(false) 而不是next('route')?
【问题讨论】:
标签: javascript node.js express