example - .Net 4.5 WebSocket Server se ejecuta en Windows 7?
websocket mvc 5 (2)
Sé que la clase ClientWebSocket de .Net 4.5 no es compatible con Windows 7, pero ¿es posible crear un servidor WebSocket que se ejecute en Windows 7 utilizando la API de .Net 4.5?
Para hacerme más claro, según here y here , parece que la parte del lado del servidor de la implementación de .Net 4.5 WebSocket debería ser compatible incluso en Windows 7, aunque ejecute HttpListener e intente acceder a él mediante una implementación de código abierto de WebSocket. me consiguió un error "Portocol no compatible"
Como dice Marc, las API de Microsoft no funcionan en Windows 7. Sin embargo, hay varias bibliotecas de código abierto que admiten WebSockets en Windows 7 y, en algunos casos, incluso en varias plataformas a través de Mono.
El soporte HTTP.SYS a nivel de sistema operativo para websockets está limitado a Win8 / Windows Server 2012, lo que acepto es una tontería (debería ser parte de una actualización de Windows, o un paquete de servicio a lo sumo, IMO).
Esto significa que no puede usar el soporte de framework para WebSockets desde HttpListener
o ASP.NET directamente.
Pero: en cuanto a "es posible crear un servidor WebSocket" - seguro ... pero solo si maneja usted mismo las comunicaciones TCP / IP, o si utiliza una biblioteca de terceros para la misma. Esto es un poco molesto, pero no es tan malo como podría sonar.
Edición: después de algunas comprobaciones, puedo confirmar que los componentes del servidor para esto no funcionan en Windows 7 (etc.); IsWebSocketRequest
devuelve false
aunque sea una solicitud de socket web con Connection: Upgrade
and Upgrade: websocket
(etc) (de una sesión de Chrome, ya que ayuda).
Sin embargo, estoy muy sorprendido de encontrar que las piezas del lado del cliente no funcionan, porque: eso es más simple y no implica (o al menos no es necesario ) HTTP.SYS. Intentar usarlos arroja una PlatformNotSupportedException
.