2011-04-01 11 views

Respuesta

9

La biblioteca con compatibilidad con WebSockets y la solución de larga duración alternativa probablemente dependerá también de la tecnología del servidor y no solo del navegador del cliente. Intente mirar socket.io por ejemplo.

+11

Socket IO es grande pero es importante entender que se trata de una capa de aplicación en la parte superior de WebSockets (con caída de espaldas a otros mecanismos). No es exactamente una "biblioteca WebSockets" sino un marco que utiliza WebSockets (entre otras cosas) para la comunicación entre el cliente y el servidor. –

0

Sí, también necesitará soporte de servidor para eso. Kaazing WebSocket Gateway es compatible con una emulación muy rápida/Polyfill. Si tiene un complemento como Flash, puede usar eso (optimización oportunista), pero si no lo hace, emula WebSocket con transmisión encriptada, que es mucho más eficiente que una encuesta larga. Viene con SSE y Cross Document Messaging soporte y emulación también, así como muchas abstracciones de protocolo de nivel superior (JMS/Stomp, XMPP, etc.)

22

Encontré que Socket.IO implementa una capa extraña y arbitraria sobre el Protocolo de WebSocket Preferiría simplemente pasar datos en bruto de ida y vuelta, por lo que para mi proyecto, fui con web-socket-js.

web-socket-js funciona de manera similar a Socket.IO en que se vuelve a utilizar sockets Flash si el soporte WebSocket no está disponible. Por lo tanto, funciona en todos los principales navegadores compatibles con Flash (lo probé yo mismo).

Simplemente asegúrese de abrir el puerto 843 en su firewall o obtendrá un error de política de seguridad de Flash. Probablemente necesites un script para escuchar también en el puerto 843 ... Utilicé em-websocket para el servidor de socket, y en su léame creo que es un enlace a un script de Perl que proporciona esto.

+0

El siguiente enlace me resultó útil en lo que respecta al alojamiento del script de políticas: http://briangonzalez.org/posts/websockets-polyfill – Ash

0

Union Server tiene compatibilidad con WebSocket con respaldo a la comunicación AJAX estilo cometa. Union es una plataforma para crear aplicaciones conectadas, como juegos multijugador en línea.

http://www.unionplatform.com

5

He estado usando SignalR desde hace varios meses, y es impresionante. Hace lo que hace Socket.IO, pero tal vez incluso mejor. Se degrada de la siguiente manera: Web Sockets, Server Sent Events, Forever Frame, AJAX Long Polling. Solo funciona con .NET.

https://github.com/SignalR/SignalR/wiki/Faq