使用SSE检测readyState的更改

时间:2014-07-30 17:20:33

标签: javascript javascript-events server-sent-events

我正在使用HTML5 Server-Sent事件:

SSEUpdate = new EventSource("update.php");

我想检测SSEUpdate.readyState何时发生变化。我已尝试.onerror,但当我使用console.log(SSEUpdate.readyState)时,我总是0。我希望在readyState更改为2时运行我的功能。谢谢!

1 个答案:

答案 0 :(得分:1)

我最终使用了一个投票解决方案:

var SSECheck = setInterval(function() {
    if (SSEUpdate.readyState == 2) {
        clearInterval(SSECheck);
        // call to fn to restart sse
    }
}, 500);

需要花费0.5秒来捕获,但它可以完成任务。