我正在尝试在 javascript 中使用 EventSource。但是一旦我使用它们,我就会遇到一些麻烦。首先,在重新加载页面时,EventSource 无法重新连接。其次,使用它会阻止 XmlHttpRequests 正常工作。在下面的代码中,如果我注释了 event_source 相关代码,则 xml 请求可以正常工作。如果我创建事件源并添加侦听器,则 xml 请求永远不会成功。
envent_source = new EventSource('event-source.php');
envent_source.addEventListener('update', function(event) {
console.log("update event");
}, false);
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (this.readyState == this.DONE) {
if (this.status == 200)
console.log("received");
}
}
request.open("GET", "document.xml");
request.send();
我错过了什么吗?EventSource 需要谨慎使用吗?