Node.js 请求/响应终止时NodeJS服务器崩溃

Node.js 请求/响应终止时NodeJS服务器崩溃,node.js,express,Node.js,Express,中止发送到NodeJS Express服务器的xmlHttpRequest时,如果请求最终未被处理,或者由于请求被删除而无法发送响应,则服务器将崩溃 我使用connected标志来确保响应仅在连接打开时发送。 我试图捕获这些异常,但它们不处理请求中止事件: var connected = true; req.connection.on('close', function () { connected = false; // code to handle connection ab

中止发送到NodeJS Express服务器的xmlHttpRequest时,如果请求最终未被处理,或者由于请求被删除而无法发送响应,则服务器将崩溃

我使用connected标志来确保响应仅在连接打开时发送。 我试图捕获这些异常,但它们不处理请求中止事件:

var connected = true;
req.connection.on('close', function () {
    connected = false;
    // code to handle connection abort
});
res.on('error', function (err) {
    console.log("response couldn't be sent.");
    connected = false;
});
if(connected)
    res.send(...);

req.connection.removeListener('close', removeCallback);
res.removeListener('error', removeCallback);

是否有任何事件可以处理导致服务器崩溃的“错误:请求中止”异常?

根据W3C规范,XMLHttpRequest发出“中止”事件

因此,我想,基本上,您可以通过侦听该事件来处理错误。

实际上,
请求。on('abort',fn)
应该可以很好地检测
节点.js中中止的HTTP请求