我尝试为Web套接字创建处理程序,但context.IsWebSocketRequest总是返回false并且无法在Windows 7上使用IIS 8 Express。
如何启用websocket模块或我丢失的任何步骤?我有带有IIS Express动态网址的VS 2012应用程序。
请帮忙。
答案 0 :(得分:9)
需要在IIS 8中启用WebSocket协议(请参阅http://www.codeguru.com/csharp/csharp/programming-html5-web-sockets-in-asp.net-4.5.htm)。此外,我不确定Windows 7是否支持Web套接字。我只看到需要Windows 8或Windows Server 2012。
答案 1 :(得分:8)
简短的回答是,您可以使用IIS 8 Express在Windows 7中针对WebSockets 编写应用程序,但实际上您无法测试它们。它需要Windows 8或Windows Server 2012。
WebSocket支持
IIS 8.0 Express支持编写WebSocket应用程序。有关详细信息,请参阅Microsoft MSDN网站上的WebSocket协议规范或System.Net.WebSockets命名空间主题。
无法在低级操作系统上运行的Windows Server 2012和Windows 8功能
有一些功能需要特定的体系结构 到无法正常工作的Windows Server 2012和Windows 8客户端 在早期操作中安装IIS 8.0 Express时的低级别 系统:
服务器名称指示(SNI)
中央证书店
WebSocket功能
然后,从System.Net.WebSockets MSDN entry(强调我的):
Windows 7,Windows Vista SP2和Windows Server 2008支持System.Net.WebSockets命名空间中的某些类。但是,Windows 8上支持客户端和服务器WebSockets的唯一公共实现。 Windows Server 2012。 Windows 7,Windows Vista SP2和Windows Server 2008支持的System.Net.WebSockets命名空间中的类和类元素是抽象类。这允许应用程序开发人员使用客户端WebSockets的实际实现来继承和扩展这些抽象类。