为什么每个请求发送多个响应会使NodeJS服务器崩溃?
可能是一个愚蠢的问题,但我想知道为什么 ,即每次请求closures一个NodeJS服务器多次调用res.send()
( http.ServerResponse
一个子类)不止一次? 为什么在发送第一个响应的时候没有结束请求,只是logging错误而不会崩溃?
Express只是抛出exception,然后节点处理它:
当未捕获的JavaScriptexception一直回到事件循环时,会发出'uncaughtException'事件。 默认情况下,Node.js通过将堆栈跟踪打印到stderr并退出来处理这些exception。 DOC
如果你想做其他事情,实现你自己的process.on('uncaughtException', (err) => {})
或者你可以让它崩溃,像永远使用的东西把它恢复。