SignalR - 未处理的拒绝(错误):WebSocket 关闭,状态代码:1000 ()

SignalR - Unhandled Rejection (Error): WebSocket closed with status code: 1000 ()

一个 asp.net 核心应用程序,在客户端使用 react+redux,使用 signalR。 在客户端出现以下错误:

Unhandled Rejection (Error): WebSocket closed with status code: 1000 ().

好像是“normal closure”,但是没有关闭连接的代码。

应用程序在多个视口中以每个视口 60 FPS 的速度发送小图像。这几乎完全利用了 JS 线程,我认为它可能会阻止 signalR 保持活动状态。

尝试将服务器中 signalR 的超时设置为其最大值,但这并没有阻止问题再次发生。

是什么导致 signalR 套接字在不调用关闭且没有错误消息的情况下关闭?

我猜浏览器或服务器可能出于自我保护或达到设定限制而关闭。

至于为什么错误信息含糊不清:The browser literally can't give you too much feedback about this - see the warning text before 9.3.4. 编辑:这是错误的,仅适用于关闭代码 1006.

为了解决这个问题,我打开了logs as Jesper 。 问题是我正在取消传递给 SendAsync 方法的 CancellationToken。由于某些奇怪的原因,取消发送会关闭套接字(我希望它只会取消特定消息,而不是关闭连接)。