如何确定Node.js服务器响应是否已停止?

时间:2013-10-16 09:38:41

标签: javascript node.js http

如何在不收听“结束”或“关闭”事件的情况下确定server.HttpResponse是否已停止?

我想要实现的是这样的:

http.createServer(function (request, response) {
    var foo; // my event emitting object

    // ... something compilated happens here ...

    foo.onSomeEvent(function () {
        if (response.hasEnded) {
            // do something
        }
    });
});

2 个答案:

答案 0 :(得分:11)

您可以检查响应对象上的finished属性:

if (res.finished) {
  ...
}

(从未使用过它,所以不确定使用时是否有任何潜在的问题需要考虑)

答案 1 :(得分:0)

使用

if(response.writableEnded){
   //doSomething();
}

response.finished 已弃用