Azure上的SignalR:连接握手失败

时间:2019-09-06 16:52:26

标签: azure signalr

我的应用程序出现错误,表明通过wss://的连接失败。

浏览器获得200状态代码,我在ASP.NET Core应用程序中看到如下日志行:

  

{“ @ t”:“ 2019-09-06T16:46:58.0850696Z”,“ @ m”:“连接握手失败。”,“ @ i”:“ ebdbcf97”,“ @ l”:“错误“,” EventId“:{” Id“:5,” Name“:” HandshakeFailed“},” SourceContext“:” Microsoft.AspNetCore.SignalR.HubConnectionContext“,” TransportConnectionId“:” qLt39WTMAY4t-Q4vyRTGrg“,” RequestId“: “ 0HLPISG9A2QAE:00000006”,“ RequestPath”:“ /集线器/结果”,“ CorrelationId”:null,“ ConnectionId”:“ 0HLPISG9A2QAE”}

浏览器错误:

  

与'wss://frontend.env.company.com/hubs/results?id = qLt39WTMAY4t-Q4vyRTGrg'的WebSocket连接失败:WebSocket握手期间出错:意外的响应代码:200

该应用程序在Azure托管的kubernetes群集中的nginx后面运行。它以Azure CDN开头,它将某些/ path路由到此起点/端点。

任何帮助将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

原因是带有Premium Verizon的Azure CDN不支持WebSockets。已经不再使用它作为解决方案,而是使用了nginx,效果很好。