我对Express很熟悉,但对Restify很陌生。的RESTify的文件有许多例子呼吁res.send()
如下之后next()
:Resitfy中res.send()之后调用next()有什么意义?
server.get('/echo/:name', function (req, res, next) {
res.send(req.params);
return next();
});
这看起来像一些的RESTify专家以及推荐模式:
The consequences of not calling next() in restify
什么是这样做的实际使用情况?在你打电话给res.send()
之后,有没有链条中的下一个处理程序可以做的事情?
当然,它可能会做额外的数据库工作或请求跟踪等,但是......如果您没有这样做,为什么要调用.next?这样做可以使未来的处理程序可以在您不返回的情况下继续工作,因为无论如何,调用.next并没有真正的伤害,只要知道如果多条路线碰巧发生了相同的请求,则只有其中一个可以成功调用'res.send',第二个会导致错误。 –
@Kevin B:谢谢你的回答。这就是'后期渲染'类型中间件的情况,对吧?请阅读我的意见,让我知道你的想法。 – Max
正确。我同意你的结论,只有当你知道你在做什么时才这样做。 –