2016-11-20 95 views
4

如果我叫res.send(),但没有叫next()我需要在res.send()之后调用next()吗?

  1. 这个中间件之后的任何中间件将不会被执行。
  2. 如果这个中间件不是最后一个中间件,那么请求将永远“挂起”,并且不会被垃圾收集,因为它仍在等待next()被调用。

以上是我试图说我总是应该叫next(),这是真的吗?

+0

如果你喜欢答案,请接受它谢谢 –

回答

5

不需要致电next()来完成发送请求。 res.send()res.json()应该结束所有写入响应流并发送响应。

然而,你绝对可以称之为next()如果你想将请求发送后做进一步的处理,只要确保你叫res.send()后,你不写响应流。

+0

这是一个很好的答案 –

相关问题