我正在创建一个客户端 - 服务器应用程序,它允许通过websockets进行推送通知,并遵循本指南:http://msdn.microsoft.com/en-us/library/hh977020(v=vs.110).aspx。
它完美地运行localhost,但是当我将服务发布到Azure时,在允许使用websockets的站点上,我们得到以下异常: 未处理的类型' System.ServiceModel.CommunicationException'发生在mscorlib.dll中 其他信息:websocket错误 和内在的例外: 未处理的异常:System.ServiceModel.CommunicationException:发生WebSocket错误。 ---> System.Net.WebSockets.WebSocketException:WebSocket升级请求失败。标题' Sec-WebSocket-Protocol'在回复中缺失。
我想我需要设置' Sec-WebSocket-Protocol'某处? 我尝试将客户端端点更改为" wss://"而不是" ws://",然后它告诉我" http是预期的"。
答案 0 :(得分:0)
您要部署到Azure网站吗?如果是这样,您是否已在管理门户上启用了WebSockets,因为http://azure.microsoft.com/blog/2013/11/14/introduction-to-websockets-on-windows-azure-web-sites/文章在开头介绍过?
答案 1 :(得分:-1)
解决此问题的方法是不在客户端和服务器端指定websocket子协议。