我正在尝试运行我的signalR应用程序,但收到以下错误:">
WebSocket 连接到 "ws://localhost:60377/signalr/connect?transport=webSockets&clientProtocol=2.1&connectionToken=f8tOcpqdXVZ245%2BvWKsSFHaGfl6GePMtKf0Jk9wSIJQxsa5KnEiZFyGoFgYuwbQ%2FirsDjiX%2FHtVRJAvhvmOtrvYJpaZD21GHiyyqBw785nI2TICxJ4P33puQnEnjGSlMpmMBxtNk02XxkTJpZxvClw%3D%3D&connectionData=%5B%7B%22name%22%3A%22geologuehub%22%7D%5D&tid=4" 失败:WebSocket 握手期间出错:意外响应代码: 500">
我将不胜感激任何解决此问题的帮助。
在 JavaScript 上添加回退传输列表解决了这个问题。 这很奇怪,因为我使用的是谷歌浏览器(版本 77.0.3865.90(,并且不支持网络套接字!!
$.connection.hub.start({ transport: ['serverSentEvents', 'longPolling'] }).done(function ()
{
console.log(`SignalR connection transport used is "${$.connection.hub.transport.name}"`);
});
在以下情况下可能会发生这种情况:
- 您的中心不是公共类。
- 服务器无法实例化中心。
- 当您的服务器在
http
上运行时,您正在建立https
连接,反之亦然。