【问题标题】:failed to connect signalR error during websocket handshake code : 400websocket握手代码期间无法连接signalR错误:400
【发布时间】:2016-11-05 03:10:35
【问题描述】:

我有 signalR websocket 来显示通知

连接代码如下:

$.connection.hub.start().done(function(){
  console.log("connected");
});
            
var notif = $.connection.notificationHub;
console.log(notif);

部署到生产服务器后,signalR 无法正常工作并在控制台中显示此错误:

生产服务器正在使用 iis 8.5 是什么导致了这个错误?谢谢。

【问题讨论】:

标签: javascript c# asp.net-mvc signalr


【解决方案1】:

您的web.config 文件中的<system.web> 标记中是否有此标记?

<httpRuntime maxRequestLength="40960" targetFramework="4.5" requestValidationMode="2.0" />

如果这不起作用,请尝试故障转移到 long polling 而不是 SignalR 中的 WebSockets,看看是否会遇到相同的错误。

【讨论】:

  • 这对我有用,但无法想象为什么。你有什么想法吗?我发现带有信号器的引擎盖中间件尝试解析请求身份验证令牌并失败但无法获取更多详细信息
  • 虽然我不知道这个解决方案如何设法避免响应错误代码 400,但它至少可以防止几个人出现“连接重置”错误。请参阅stackoverflow.com/a/37531108/2416627 线程。
  • 对.net core也有效?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-22
  • 1970-01-01
  • 2019-08-05
  • 1970-01-01
  • 2020-11-16
相关资源
最近更新 更多