关闭第二个onopen方法的第一个事件源

时间:2016-05-16 17:45:11

标签: javascript html5 server-sent-events event-stream eventsource

我正在开发一个使用window.EventSource将数据传输到表视图的应用程序。由于每个服务器的max-connections限制为6,我试图在给定的时间点有一个EventSource对象,所以从根本上我需要在第二个onopen方法上关闭第一个eventsource对象然后第二个onmessage事件将数据流传输到表视图。考虑以下代码在onclick事件上运行,

if(firstEventSource) {
  firstEventSource.close();
}
var firstEventSource = new window.EventSource(endPoint);
firstEventSource.onmessage = function (evt) {
  //... code goes here
} 

上面的代码可以工作,但正如我所提到的,而不是直接关闭firstEventSource,我需要通过确保第二个事件源已打开它的连接来关闭它。

1 个答案:

答案 0 :(得分:0)

不要使用多个EventSource。使用一个并使用命名事件http://cjihrig.com/blog/the-server-side-of-server-sent-events/

这样创建一个EventSource,然后对服务器进行API调用,然后单击更改单个EventSource的配置。