哪些浏览器支持HTML5 WebSocket API? [英] What browsers support HTML5 WebSocket API?
问题描述
哪些浏览器支持 WebSocket API ?
客户端
- 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 - 支持禁用WebSockets 。要启用它,请查看此处。
- Opera 11 - 支持禁用。要启用它,请查看此处。
- HyBi-07 +:
- Chrome 14.0
- Firefox 6.0 - 前缀:
MozWebSocket
- IE 9 - 通过可下载的Silverlight扩展
- HyBi-10:
- Chrome 14.0 + 15.0
- Firefox 7.0 + 8.0 + 9.0 + 10.0 - 前缀:
MozWebSocket
- IE 10(来自Windows 8开发人员预览版)
- Firefox 7.0 + 8.0 + 9.0 + 10.0 - 前缀:
- Chrome 14.0 + 15.0
- HyBi-17 / RFC 6455
- Chrome 16
- Firefox 11
- Opera 12.10 / Opera Mobile 12.1
使用Flash的任何浏览器都可以使用 web-socket-js shim / polyfill。
参见 caniuse 了解桌面和移动浏览器中WebSockets支持的当前状态。
请参阅测试报告 ://www.tavendo.de/autobahnrel =noreferrer> Autobahn WebSockets 用于功能/协议一致性测试。
服务器端
它取决于您使用的是哪种语言。
在Java / Java EE:
- Jetty 7.0 支持它(非常易于使用)
V 7.5支持RFC6455
- Jetty 9.1 支持javax.websocket / JSR 356) - (非常低的水平,有时非常复杂),Glassfish 3.1有新的重构Websocket支持,它对开发者更友好
V 3.1.2支持RFC6455
- Caucho Resin 4.0.2 (尚未尝试)
V 4.0.25支持RFC6455
- Tomcat 7.0.27 现在支持
V 7.0.28支持RFC6455
- Tomcat 8.x 本身支持websockets RFC6455并且符合JSR 356标准
- Java EE 7中包含的JSR 356 将为WebSocket定义Java API,但尚未稳定且完整。请参阅Arun GUPTA的文章 WebSocket和Java EE 7 - 为JSR 356(TOTD#181)做好准备和 QCon演示文稿(从00:37:36到00:46 :53)了解有关进展的更多信息。您也可以查看 Java websocket SDK 。
其他一些Java实现:
- Kaazing Gateway
- jWebscoket
- Netty
- < a href =http://xlightweb.sourceforge.net/ =noreferrer> xLightWeb
- Webbit
- 氛围
- 灰熊
- Apache ActiveMQ
V 5.6支持RFC6455
- Apache Camel
V 2.10 sup端口RFC6455
- JBoss HornetQ
在C#中:
在PHP中:
在Python中:
- < a href =http://code.google.com/p/pywebsocket/ =noreferrer> pywebsockets
- websockify gevent-websocket , gevent-socketio 和基于前者的 flask-sockets
- < a href =http://autobahn.ws =noreferrer> Autobahn
- 龙卷风
在C:
- Socket.io :Socket.io还有用于Python,Java,Google GO的服务器端口,Rack
- sockjs :sockjs也有适用于Python,Java,Erlang和Lua
- WebSocket-Node - 纯JavaScript客户端& HyBi-10的服务器实现。
- 支持Ruby(JRuby),Java,Grovy,Javascript(Rhino / Nashorn),Scala,...
- 真正的线程。 (与Node.js不同)
- 了解多种网络协议,包括:TCP,SSL,UDP,HTTP,HTTPS,Websockets, SockJS 作为WebSockets的后备
- 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 - support for WebSockets disabled. To enable it see here.
- Opera 11 - with support disabled. To enable it see here.
- HyBi-07+:
- Chrome 14.0
- Firefox 6.0 - prefixed:
MozWebSocket
- IE 9 - via downloadable Silverlight extension
- HyBi-10:
- Chrome 14.0 + 15.0
- Firefox 7.0 + 8.0 + 9.0 + 10.0 - prefixed:
MozWebSocket
- IE 10 (from Windows 8 developer preview)
- HyBi-17/RFC 6455
- Chrome 16
- Firefox 11
- Opera 12.10 / Opera Mobile 12.1
- Jetty 7.0 supports it (very easy to use)
V 7.5 supports RFC6455
- Jetty 9.1 supports javax.websocket / JSR 356) - GlassFish 3.0 (very low level and sometimes complex), Glassfish 3.1 has new refactored Websocket Support which is more developer friendly
V 3.1.2 supports RFC6455
- Caucho Resin 4.0.2 (not yet tried)
V 4.0.25 supports RFC6455
- Tomcat 7.0.27 now supports it
V 7.0.28 supports RFC6455
- Tomcat 8.x has native support for websockets RFC6455 and is JSR 356 compliant
- JSR 356 included in Java EE 7 will define the Java API for WebSocket, but is not yet stable and complete. See Arun GUPTA's article WebSocket and Java EE 7 - Getting Ready for JSR 356 (TOTD #181) and QCon presentation (from 00:37:36 to 00:46:53) for more information on progress. You can also look at Java websocket SDK.
- Kaazing Gateway
- jWebscoket
- Netty
- xLightWeb
- Webbit
- Atmosphere
- Grizzly
- Apache ActiveMQ
V 5.6 supports RFC6455
- Apache Camel
V 2.10 supports RFC6455
- JBoss HornetQ
- pywebsockets
- websockify
- gevent-websocket, gevent-socketio and flask-sockets based on the former
- Autobahn
- Tornado
- Socket.io : Socket.io also has serverside ports for Python, Java, Google GO, Rack
- sockjs : sockjs also has serverside ports for Python, Java, Erlang and Lua
- WebSocket-Node - Pure JavaScript Client & Server implementation of HyBi-10.
- Support for Ruby(JRuby), Java, Grovy, Javascript(Rhino/Nashorn), Scala, ...
- True threading. (unlike Node.js)
- Understands multiple network protocols out of the box including: TCP, SSL, UDP, HTTP, HTTPS, Websockets, SockJS as fallback for WebSockets
- >
Vert.x(也称为Node.x):类似于在Java 7 JVM上运行的多语言实现的节点,基于Netty:
Pusher.com 是一个可通过REST API访问的Websocket云服务。
DotCloud 云平台支持Websockets,以及Java(Jetty Servlet容器),NodeJS,Python,Ruby,PHP和Perl编程语言。
Openshift 云平台支持websockets和Java(Jboss,Spring,Tomcat& Vertx),PHP(ZendServer& CodeIgniter),Ruby(ROR),Node.js,Python(Django& Flask)平台。
对于其他语言实现,请参阅维基百科文章以获取更多信息。
Websockets的RFC: RFC6455
I am going to develop an instant messaging application that runs in the browser.
What browsers support the WebSocket API?
Client side
Any browser with Flash can support WebSocket using the web-socket-js shim/polyfill.
See caniuse for the current status of WebSockets support in desktop and mobile browsers.
See the test reports from the WS testsuite included in Autobahn WebSockets for feature/protocol conformance tests.
Server side
It depends on which language you use.
In Java/Java EE:
Some other Java implementations:
In C#:
In PHP:
In Python:
In C:
In Node.js:
Vert.x (also known as Node.x) : A node like polyglot implementation running on a Java 7 JVM and based on Netty with :
Pusher.com is a Websocket cloud service accessible through a REST API.
DotCloud cloud platform supports Websockets, and Java (Jetty Servlet Container), NodeJS, Python, Ruby, PHP and Perl programming languages.
Openshift cloud platform supports websockets, and Java (Jboss, Spring, Tomcat & Vertx), PHP (ZendServer & CodeIgniter), Ruby (ROR), Node.js, Python (Django & Flask) plateforms.
For other language implementations, see the Wikipedia article for more information.
The RFC for Websockets : RFC6455
这篇关于哪些浏览器支持HTML5 WebSocket API?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!