javascript - tutorial - ¿Qué navegadores soportan HTML5 WebSocket API?
websockets javascript (1)
Lado del cliente
- Hixie-75:
- Chrome 4.0 + 5.0
- Safari 5.0.0
- HyBi-00 / Hixie-76:
- Chrome 6.0 - 13.0
- Safari 5.0.2 + 5.1
- iOS 4.2 + iOS 5
- Firefox 4.0 - soporte para WebSockets desactivado . Para habilitarlo ver aquí .
- Opera 11 - con el apoyo desactivado . Para habilitarlo ver aquí .
- HyBi-07 +:
- Cromo 14.0
- Firefox 6.0 - prefijado:
MozWebSocket
- IE 9 - a través de la extensión descargable de Silverlight
- HyBi-10:
- Chrome 14.0 + 15.0
- Firefox 7.0 + 8.0 + 9.0 + 10.0 - con el prefijo:
MozWebSocket
- IE 10 (de la vista previa para desarrolladores de Windows 8)
- HyBi-17 / RFC 6455
- Cromo 16
- Firefox 11
- Opera 12.10 / Opera Mobile 12.1
Cualquier navegador con Flash puede ser compatible con WebSocket utilizando el web-socket-js shim / polyfill.
Consulte caniuse para conocer el estado actual de la compatibilidad con WebSockets en navegadores de escritorio y móviles.
Consulte los informes de prueba de WS testinguite incluidos en Autobahn WebSockets para ver las pruebas de conformidad de funciones / protocolos.
Lado del servidor
Depende del idioma que uses.
En Java / Java EE:
- Jetty 7.0 lo admite (muy fácil de usar)
V 7.5 supports RFC6455
- Jetty 9.1 es compatible con javax.websocket / JSR 356) - GlassFish 3.0 (nivel muy bajo y en ocasiones complejo), Glassfish 3.1 tiene un nuevo soporte Websocket refactorizado que es más fácil para el desarrollador
V 3.1.2 supports RFC6455
- Caucho Resin 4.0.2 (aún no probado)
V 4.0.25 supports RFC6455
- Tomcat 7.0.27 ahora lo admite
V 7.0.28 supports RFC6455
- Tomcat 8.x tiene soporte nativo para websockets RFC6455 y es compatible con JSR 356
- JSR 356 incluido en Java EE 7 definirá la API de Java para WebSocket, pero aún no está estable y completo . Consulte el artículo WebSocket y Java EE 7 de Arun GUPTA - Preparándose para JSR 356 (TOTD # 181) y la presentación QCon (de 00:37:36 a 00:46:53) para obtener más información sobre el progreso. También puede consultar el SDK de Java websocket .
Algunas otras implementaciones de Java:
- Puerta de enlace de Kaazing
- jWebscoket
- Netty
- xLightWeb
- Webbit
- Atmosphere
- Grizzly
- Apache ActiveMQ
V 5.6 supports RFC6455
- Apache Camel
V 2.10 supports RFC6455
- JBoss HornetQ
Cía#:
En PHP:
En Python:
- pywebsockets
- websockify
- gevent-websocket , gevent-socketio y flask-sockets basados en el anterior
- Autobahn
- Tornado
Cía:
En Node.js:
- Socket.io : Socket.io también tiene puertos de servidor para Python, Java, Google GO, Rack
- sockjs : sockjs también tiene puertos de servidor para Python, Java, Erlang y Lua
- WebSocket-Node - Implementación de cliente y servidor Pure JavaScript de HyBi-10.
Vert.x (también conocido como Node.x) : una implementación de nodo como Polyglot que se ejecuta en una JVM Java 7 y se basa en Netty con:
- Soporte para Ruby (JRuby), Java, Grovy, Javascript (Rhino / Nashorn), Scala, ...
- Hilo verdadero. (a diferencia de Node.js)
- Comprende múltiples protocolos de red SockJS para SockJS que incluyen: TCP, SSL, UDP, HTTP, HTTPS, Websockets, SockJS como SockJS para WebSockets
Pusher.com es un servicio de nube Websocket accesible a través de una API REST.
DotCloud plataforma en la nube DotCloud compatible con Websockets y Java (Jetty Servlet Container), NodeJS, Python, Ruby, PHP y los lenguajes de programación Perl.
Openshift plataforma en la nube Openshift admite websockets, y Java (Jboss, Spring, Tomcat & Vertx), PHP (ZendServer & CodeIgniter), Ruby (ROR), Node.js, Python (Django & Flask).
Para otras implementaciones de lenguaje, vea el artículo de Wikipedia para más información .
Voy a desarrollar una aplicación de mensajería instantánea que se ejecuta en el navegador.
¿Qué navegadores soportan la API de WebSocket ?