Node.js 请求/响应终止时NodeJS服务器崩溃
中止发送到NodeJS Express服务器的xmlHttpRequest时,如果请求最终未被处理,或者由于请求被删除而无法发送响应,则服务器将崩溃 我使用connected标志来确保响应仅在连接打开时发送。 我试图捕获这些异常,但它们不处理请求中止事件: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
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请求