Skip to main content
 首页 » 编程设计

c#之响应中缺少 header 'Sec-WebSocket-Protocol'

2024年01月13日31duanxz

我正在创建一个客户端-服务器应用程序,它允许通过 websockets 推送通知,并遵循了本指南:http://msdn.microsoft.com/en-us/library/hh977020(v=vs.110).aspx .

它在本地主机上运行完美,但是当我将服务发布到 Azure 时,在允许 websockets 的站点上,我们得到这个异常: mscorlib.dll 中出现类型为“System.ServiceModel.CommunicationException”的未处理异常 附加信息:websocket 错误 和内部异常: 未处理的异常:System.ServiceModel.CommunicationException:发生 WebSocket 错误。 ---> System.Net.WebSockets.WebSocketException: WebSocket 升级请求失败。响应中缺少 header “Sec-WebSocket-Protocol”。

我想我需要在某处设置“Sec-WebSocket-Protocol”? 我尝试将客户端端点更改为“wss://”而不是“ws://”,但随后它告诉我“需要 http”。

请您参考如下方法:

您要部署到 Azure 网站吗?如果是这样,您是否在管理门户上启用了 WebSockets 作为 http://azure.microsoft.com/blog/2013/11/14/introduction-to-websockets-on-windows-azure-web-sites/文章的开头是什么?