我在AngularJS中有一个客户端,我从服务器端使用Java中的多个SSE(Server-Sent-Events)(在不同Web服务器中有多个端点后端)。在angular.js eventsource中订购和过滤Server-Sent-Events
注:我必须使用SSE。
我目前注册一个监听器,每种类型的事件从每个SSE连接未来,如:
source.addEventListener('alpha', function(e) {
doSomething();
}, false);
目的是根据这些事件显示通知,以及与此我有几个问题:
- 客户如何知道后端的信息是否发生变化?
如何组织和过滤这些事件?例如,通过同时接收来自多个连接的多个事件,如何管理它们以便向客户显示关于特定事件的特定通知?
注意:我不仅仅在谈论每种类型的事件组织,而且我还需要考虑事件是否比另一个更重要。
到目前为止,我只想到接收所有事件,并将它们保存在可以排序和过滤的列表中。如果两个SSE事件同时被触发,是否有问题?你知道这个例子吗?
在客户端组织事件的逻辑是一个好主意吗?
- 我应该为这些事件创建一个数据库吗?
谢谢
谢谢@Aniruddha Das。我有几个问题: - 为什么我必须定期调用服务器以确定数据是否有变化?当且仅当服务器中的内容发生变化时,SSE事件才能发送新数据?如果没有,是不是可以将旧数据与从AngularJS中同一事件接收到的新数据进行比较? [我问,因为也许这些不是最好的方法] P.D.不幸的是我不得不使用SSE。 – sie
正如你想通知你的用户,如果有任何改变从服务器端。如果用户浏览器是开放的,他不需要刷新,您只需定期拨打电话更新用户浏览器 –
我明白了。好的,最后一个问题。你认为在客户端组织事件的逻辑是一个好主意吗?谢谢! – sie