【发布时间】:2021-05-25 04:16:05
【问题描述】:
如果我保持浏览器选项卡处于活动状态(每 5-6 分钟至少打开一次),我的 WebSocket 连接会通过 ping 请求保持活动状态(参见随附的屏幕截图)。但如果我放弃选项卡 10 分钟左右,/ping 请求停止发生,WebSocket 连接终止。 对此有何解释以及如何绕过它以在设备唤醒时保持连接活动?
PS:我怀疑我们最近迁移到 Azure Web 服务可能与此有关。或者某些浏览器政策可能会改变。 SignalR 实施了几年,我们现在第一次遇到这样的问题。
【问题讨论】:
-
你有这样的代码来重新确保关闭时重新连接?github.com/AndersMalmgren/SignalR.EventAggregatorProxy/blob/…
-
我也在一个已经正常工作了一段时间的应用程序上看到了这个问题。您找到解决方案了吗?
-
我认为这可能与 Chrome 88 中引入的节流有关。blog.chromium.org/2020/11/… 。您是否在所有浏览器中都看到了该问题?
-
我在 Github 上提交了一个问题:github.com/SignalR/SignalR/issues/4536#issue-822830561