到目前为止,我已经将我的get和post处理程序定义(req, res)为参数,假设我将这些处理程序放在中间件链中,并确保在这些处理程序中正确处理任何响应和错误处理...因此它没关系,我没有提到任何参考next.
这是一种有效且明智的做法,或者next()即使(目前)之后没有任何事情发生,也总是要打电话是好的做法吗?例如,也许在将来你可能想要在这些路线之后做一些处理......或者可能有一个原因我还没有遇到为什么总是打电话是好的做法next().
例如,快速路由指南中有以下简单示例:
app.get('/example/b', function (req, res, next) {
console.log('the response will be sent by the next function ...')
next()
}, function (req, res) {
res.send('Hello from B!')
})
Run Code Online (Sandbox Code Playgroud)
当然,我理解这是一个非常简单的例子来说明处理程序可以链接,并不打算为get处理程序提供完整的框架,但是如果next在第二个处理程序中定义和使用它会更好,如下所示?
app.get('/example/b', function (req, res, next) {
console.log('the response will be sent by the next function ...')
next()
}, function (req, res, next) {
res.send('Hello from B!')
next()
})
Run Code Online (Sandbox Code Playgroud)
或者,实际上通常的做法是假设将响应发送回客户端的处理函数不应该调用 …