信号器:Websockets连接问题

时间:2016-07-25 20:24:33

标签: websocket connection signalr signalr-hub

我们的应用程序使用SignalR,我们在应用程序中启用了websockets。有时我们在浏览器控制台窗口中收到以下错误,同时自动更新无效。重新启动后,它开始工作。

火狐: “到WS的连接://xx.xx.xx.xx:XXXXX / signalr /连接传输的WebSockets =&安培; connectionToken =%2F54BwG4ui3MbJPK2t8DfS9AklLCtAEDQ1sHeAsZ6e3h2LVT0WYbbgGvCI2AlnsJf0AqY4AzMtp6FS0xl07td8kKFYhAmIEL4GjLCXP%2Bhlfy3k226j%2B4fXHVB8Vvblewc&安培; connectionData =%5B%7B%22name%22%3A%22pushdatahub%页面加载时,22%7D%5D& tid = 7被中断。“

铬: jquery.signalR-1.0.0.min.js:10 WebSocket已处于CLOSING或CLOSED状态。

请参阅以下在服务器上完成的设置。

  • .Net框架4.6.1在服务器中。
  • 在IIS /应用程序中启用了websockets
  • httpruntime在web.config中设置
  • 服务器使用SignalR Hub

示例客户端代码:

$scope.isHubConnectionFailed = false;
$scope.connection = $.hubConnection(AppURL);
$scope.HubProxy = $scope.connection.createHubProxy(App.chatHub);

$scope.connection.start()
    .done(function () {
        $scope.isHubConnectionFailed = false;
    })
    .fail(function() {
        $scope.isHubConnectionFailed = true;
    });

var tryingToReconnect = false;

$scope.connection.reconnecting(function() {
    tryingToReconnect = true;
});

$scope.connection.reconnected(function() {
    tryingToReconnect = false;
    $scope.isHubConnectionFailed = false;
});

$scope.connection.disconnected(function() {
    if (tryingToReconnect) {
        $scope.isHubConnectionFailed = true;
    }
});

是否有同样的问题?

1 个答案:

答案 0 :(得分:0)

检查您使用的浏览器版本。

支持的平台:http://www.asp.net/signalr/overview/getting-started/supported-platforms

我发现signalr和azure有一个问题,我不确定这是不是你的情况,但它可能有助于调试问题。 https://github.com/SignalR/SignalR/issues/2780