2016-11-20 65 views
4

如果我叫res.send(),但沒有叫next()我需要在res.send()之後調用next()嗎?

  1. 這個中間件之後的任何中間件將不會被執行。
  2. 如果這個中間件不是最後一箇中間件,那麼請求將永遠「掛起」,並且不會被垃圾收集,因爲它仍在等待next()被調用。

以上是我試圖說我總是應該叫next(),這是真的嗎?

+0

如果你喜歡答案,請接受它謝謝 –

回答

5

不需要致電next()來完成發送請求。 res.send()res.json()應該結束所有寫入響應流併發送響應。

然而,你絕對可以稱之爲next()如果你想將請求發送後做進一步的處理,只要確保你叫res.send()後,你不寫響應流。

+0

這是一個很好的答案 –

相關問題