2012-06-14 50 views

Respuesta

44

No, websockets solo es compatible nativamente con Windows en Windows 8, independientemente de la versión de estudio visual que esté utilizando.

http://www.paulbatum.com/2011/09/getting-started-with-websockets-in.html

Esto es debido a algunos problemas de bajo nivel en Windows 7 con http.sys.

Hay un offchance puede ser portado, pero parece poco probable: http://weblogs.asp.net/owscott/archive/2012/03/01/what-s-new-in-iis-8.aspx

Para utilizar websockets en Windows 7, tendrá que escribir su propio servicio.

Trate de usar esto para clientside: http://websocket4net.codeplex.com/

y esto por el lado del servidor: http://superwebsocket.codeplex.com/

+0

¿Me equivoco al decir que websocket4net es para la implementación del lado del cliente? ¿No sería SuperWebSocket lo que se necesita para aceptar conexiones en el servidor? IDK, puedo estar equivocado, pero eso se basa en la descripción de la página a la que se vincula. – AaronLS

+0

Muy bien, gracias - he editado para incluir un enlace a la parte del servidor de ese proyecto también. – Nik

15

me encontré con el mismo problema y lo resolvió mediante el uso de Fleck. Trivialmente simple de implementar:

Uno. NuGet agregar Fleck referencia

Dos. Crear su zócalo del servidor web

// Create Websocket server 
websocketServer = new Fleck.WebSocketServer("ws://localhost:82"); 
websocketServer.Start(socket => 
{ 
    socket.OnOpen =() => Console.WriteLine("Open!"); 
    socket.OnClose =() => Console.WriteLine("Close!"); 
    socket.OnMessage = message => socket.Send(message); 
}); 

ahora tengo una API de un auto ASP.NET Web Host en un puerto y la conexión websockets corriendo junto a ella.

+0

Esto es interesante, solo destaca que Fleck es la implementación del lado del servidor, no del lado del cliente. –