Amn*_*mna 7 signalr signalr-hub signalr.client
为什么 SignalR 在浏览器的多个选项卡中为同一登录用户建立不同的连接。有没有办法为在同一浏览器中打开的所有选项卡建立一个连接。从连接我的意思是 SignalR 中用户的 connectionID。
因为同一个浏览器的不同标签是不同的文档\“进程”——每个标签在某种意义上代表了客户端应用程序的不同“实例”。无法在它们之间直接共享 JavaScript 对象(这就是 SignalR 在每个选项卡中打开新连接的原因)。要在不同实例之间共享数据\通信,您可以使用例如 HTML5 localStorage 机制
因此,如果您想在选项卡之间共享一个 SignalR 连接,要走的路是通过仅在一个选项卡中管理连接并允许选项卡之间的通信来自己实现它,以便每个选项卡都能够从服务器发送\接收消息。您可以使用这个很酷的项目或从中获得灵感,该项目正是这样做的。
这也解决了浏览器对单个服务器最大并发连接数的限制问题。
| 归档时间: |
|
| 查看次数: |
7139 次 |
| 最近记录: |