我知道是不支持Windows 7的ClientWebSocket类.NET 4.5的,但有可能创建一个使用.NET 4.5 API在Windows 7上运行的WebSocket服务器?
为了让自己更清楚,根据双方在这里和这里 ,它看起来像.NET 4.5的WebSocket实现的服务器端部分应于Windows 7的支持,甚至,但运行HttpListener并尝试使用一个开源的WebSocket实现对其进行访问让我一个“不支持Portocol”错误
我知道是不支持Windows 7的ClientWebSocket类.NET 4.5的,但有可能创建一个使用.NET 4.5 API在Windows 7上运行的WebSocket服务器?
为了让自己更清楚,根据双方在这里和这里 ,它看起来像.NET 4.5的WebSocket实现的服务器端部分应于Windows 7的支持,甚至,但运行HttpListener并尝试使用一个开源的WebSocket实现对其进行访问让我一个“不支持Portocol”错误
操作系统级HTTP.SYS的WebSockets的支持仅限于于Win8 / Windows Server 2012中 - 这我同意是愚蠢的(应该是Windows更新,或至多一个服务包的一部分,IMO)。
这意味着你不能使用从WebSockets的框架支撑HttpListener
或ASP.NET直接。
但是:对于“是否有可能创建的WebSocket服务器” - 肯定......但只有当你处理TCP / IP通讯科自己,或者使用第三方库相同。 这是一个有点讨厌,但不是那么糟糕,因为它听起来。
编辑:一些检查后,我可以证实,这个服务器端组件不能在Windows 7(ETC)工作; 在IsWebSocketRequest
返回false
,即使它是一个WebSocket的要求Connection: Upgrade
和Upgrade: websocket
(ETC)的头文件(在Chrome会话,因为它可以帮助)。
我,但是, 很惊讶地发现,客户端件不工作,因为:这是简单的,不(或至少,并不需要 )涉及HTTP.SYS。 尝试使用他们抛出一个PlatformNotSupportedException
。
正如马克说,微软的API没有在Windows 7上运行但是有一些支持Windows 7的WebSockets几个开源库,并在某些情况下,甚至可以通过单跨平台。