如何阻止信号器连接将所有内容挂在多个打开的标签上?

时间:2019-04-16 21:57:35

标签: connection signalr messaging hang

我正在使用SignalR 2.2.2从我的后端向用户发送消息。用户登录后,如果满足其他条件,则他们的连接将添加到我的消息中心上具有用户id的组中。

只要打开的选项卡/窗口数量少于10个,它的效果就很好。除此之外,它们会无限期地停留在“正在加载...”中。

似乎只是被卡在$ .connection.hub.start();

我不一定非要允许每个用户无限数量的信号器连接,但是要在10个打开的选项卡上为他们断开整个站点是一个问题。

我尝试捕获或处理错误,但是它仍然挂在那里。

$(function () {

   if (loggedInUser != null)
      {

   var user = loggedInUser.UserId;
    var messaging = $.connection.messageHub;


        if (conditions) {
            $.connection.hub.start().done(function () {
                    messaging.server.joinGroup(user);
            });
        }
     }
});

我至少要执行以下一项操作:

-只要达到限制就停止添加连接

-增加连接数限制

-如果达到限制,则开始关闭较早的连接

-尝试连接,几秒钟后,如果不起作用,请放弃

0 个答案:

没有答案