javascript - SignalR 变量正在重置

标签 javascript signalr signalr-hub signalr.client

通过我的 SignalR 程序,我让客户端调用服务器端方法。我的全局变量无法正常工作,所以我做了一个快速的小测试,我发现全局变量似乎每次都会被重置,我想知道我做错了什么以及是否可以阻止我的变量被重置。

JavaScript 方法:

  $.connection.hub.start().done(function () {
            $('#send').click(function () {
                chat.server.send(0, document.getElementById("Name").value, document.getElementById("Content").value);//send eventually calls broadcastArray

            });
        });

集线器方法:

int i = 0;
    public void BroadcastArray()
    {
        var hubContext = GlobalHost.ConnectionManager.GetHubContext<ChatHub>();
        hubContext.Clients.All.broadcastArray(messageArr);
        i = i + 1;
    }

无论我调用该方法多少次,i 总是返回 1,如何阻止变量被重置?有没有办法在集线器类中执行此操作,或者我可以将变量存储在不同的类中吗?我不太确定该怎么做。

最佳答案

我要做的第一件事就是将其放入 try/catch 中,看看它在到达该行之前是否抛出错误。如果您的 hubcontext 没有正确返回,我可能会默默地抛出异常。

其次,您的集线器是静态类吗?如果不了解您如何设置集线器,就很难判断可能出了什么问题。

关于javascript - SignalR 变量正在重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38571891/

相关文章:

javascript - 无法在字符串 'guid' 上创建属性 'loading'

javascript - 在 SharePoint 中动态显示编辑控制 block 菜单项

azure - 对于部署到 Azure 的 SignalR 服务,是否必须使用 Azure SignalR?

Signalr 客户端在重新连接时检索丢失的消息

c# - Signalr - 重写发送消息的方法

android - 当我的移动数据连接关闭时,如何在 SignalR 中断开连接

javascript - 除了我可以评估的之外,这个 javascript 是否有任何合乎逻辑的目的?

javascript - 从自然数翻转 0's and 1' s

asp.net-mvc - SignalR:无法连接到本地或任何其他 IP 地址

asp.net-web-api - 如何读取集线器 SignalR ASP.NET Core 2.1 中的 header 数据