加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 停止/启动后SignalR广播消息重复

发布时间:2020-12-15 08:05:00 所属栏目:百科 来源:网络整理
导读:每次停止/启动连接时,都会复制集线器发送到客户端的消息. 如果我执行此序列: $.connection.hub.stop() $.connection.hub.start(){…} 并从服务器中心向客户端发送消息,一次接收消息. 如果我重新执行上述顺序,即使服务器中心呼叫,我也会收到两次相同的消息 C
每次停止/启动连接时,都会复制集线器发送到客户端的消息.

如果我执行此序列:
$.connection.hub.stop()
$.connection.hub.start(){…}

并从服务器中心向客户端发送消息,一次接收消息.
如果我重新执行上述顺序,即使服务器中心呼叫,我也会收到两次相同的消息
Clients.Client(Context.ConnectionId).acceptMsg(MSG);
只有一次.对于具有connectionId的相同消息,在客户端调用acceptMsg两次.
我使用Clients.All.acceptMsg(msg)获得相同的结果

对于每个后续停止/开始,消息进一步重复;第三次发送三条消息,第四条发送四条消息,等等.

我已经尝试分离停止的调用并开始几分钟,但它没有任何区别.

其他细节:Javascript客户端,SignalR v2.0.1,Chrome版本31.0.1650.63,ASP.Net 4.5. SignalR在我的测试中使用长轮询,我允许默认协商.在SignalR跟踪中,“SignalR:Aborted xhr request”.在停止之后,在开始之前观察.

知道在这种情况下导致我的消息被复制的原因是什么吗?

解决方法

这是一个已知问题,已在即将发布的2.0.2版本中修复.以下是GitHub问题供参考: https://github.com/SignalR/SignalR/issues/2595

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读