我有一个人们经常使用的带有多个打开标签的Web应用程序。每个选项卡还通过websockets连接到外部服务器。我无法控制该服务器,它经常向所有打开的选项卡广播各种消息。对于某些消息,我希望选项卡通过简单的Ajax通知我自己的服务器。
问题在于,每个打开的标签页都希望与我的服务器联系,从而造成不必要的负载-我只需要一个通知即可。
无论如何,我都会在服务器端过滤掉重复的通知,因为用户可能有多个打开的浏览器(很少见,但这确实发生了),但是对于典型的日常使用(带有多个标签的单个浏览器),我想尽量减少多余的请求。
我该怎么做?
跨表通信的最佳方法似乎是localStorage
,但是关于同步没有任何帮助。无法保证我对存储的写入何时对其他选项卡可见。