为什么每个请求发送多个响应会使NodeJS服务器崩溃?

可能是一个愚蠢的问题,但我想知道为什么 ,即每次请求closures一个NodeJS服务器多次调用res.send()http.ServerResponse一个子类)不止一次? 为什么在发送第一个响应的时候没有结束请求,只是logging错误而不会崩溃?

Express只是抛出exception,然后节点处理它:

当未捕获的JavaScriptexception一直回到事件循环时,会发出'uncaughtException'事件。 默认情况下,Node.js通过将堆栈跟踪打印到stderr并退出来处理这些exception。 DOC

如果你想做其他事情,实现你自己的process.on('uncaughtException', (err) => {})

或者你可以让它崩溃,像永远使用的东西把它恢复。