首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集线器握手在start()过程中失败,错误为'WebSocket is not in the OPEN state‘。停止HubConnection

集线器握手在start()过程中失败,错误为'WebSocket is not in the OPEN state‘。停止HubConnection
EN

Stack Overflow用户
提问于 2019-07-12 22:12:08
回答 1查看 1K关注 0票数 1

当尝试进行用户计数时,我得到错误的web socket is not in open state,我也有多租户的Saaskit,这会是原因吗?

我试过在startup.cs中指定UseWebsockets,但没有成功

代码语言:javascript
复制
    {
        private static int UserCount;
        public override Task OnConnectedAsync()
        {
            UserCount++;
            base.OnConnectedAsync();
            this.Clients.All.SendAsync("updateUserCount", UserCount);
            return Task.CompletedTask;
        }

        public override Task OnDisconnectedAsync(Exception exception)
        {
            UserCount--;
            base.OnDisconnectedAsync(exception);
            this.Clients.All.SendAsync("updateUserCount", UserCount);
            return Task.CompletedTask;
        }
    }```

```<script>
代码语言:javascript
复制
document.addEventListener('DOMContentLoaded', function () {
代码语言:javascript
复制
    }
代码语言:javascript
复制
    function onConnectionError(error) {
代码语言:javascript
复制
        if (error && error.message) {
代码语言:javascript
复制
            console.error(error.message);
代码语言:javascript
复制
        }
代码语言:javascript
复制
    }
代码语言:javascript
复制
    var connection = new 
代码语言:javascript
复制
    signalR.HubConnectionBuilder().withUrl('/adminHub')
代码语言:javascript
复制
   .configureLogging(signalR.LogLevel.Debug).build();      
代码语言:javascript
复制
    connection.start()
代码语言:javascript
复制
        .then(function () {
代码语言:javascript
复制
            onConnected(connection);
代码语言:javascript
复制
        })
代码语言:javascript
复制
        .catch(function (error) {
代码语言:javascript
复制
            console.error(error.message);
代码语言:javascript
复制
        });
代码语言:javascript
复制
});

`

调试:正在发送handshaenter code hereke请求。

调试:在start()过程中,集线器握手失败,错误为'WebSocket is not in the OPEN state‘。停止HubConnection。

处于断开连接状态时调用了HttpConnection.stopConnection(未定义)。

连接已断开,错误为'WebSocket is not the OPEN state‘。

处于连接状态时调用的HubConnection.connectionClosed(WebSocket未处于打开状态)。

代码语言:javascript
复制
EN

回答 1

Stack Overflow用户

发布于 2020-08-05 01:22:13

我知道这是迟来的回应,但这对我很有效:

在连接时调用start之后。

代码语言:javascript
复制
connection.start()
        .then(function (data) {
            console.log(data);

        }).catch(function (err) {
            console.log(err);
        }); 

将此属性添加到webSocket对象:

代码语言:javascript
复制
Object.defineProperty(window.WebSocket, 'OPEN', { value: 1, });

Known Issue

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57008745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档