哪些浏览器支持HTML5 WebSocket API?

我将开发一个在浏览器中运行的即时消息应用程序。

哪些浏览器支持WebSocket API?

211880 次浏览

客户端

  • 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开发者预览版)
  • HyBi-17 / RFC 6455
  • Chrome 16
  • Firefox 11
  • Opera 12.10 / Opera Mobile 12.1

任何带有Flash的浏览器都可以使用web-socket-js shim/polyfill来支持WebSocket。

在桌面和移动浏览器中WebSockets支持的当前状态请参见caniuse

有关特性/协议一致性测试,请参阅高速公路WebSockets中包含的WS测试套件中的测试报告


服务器端

这取决于你使用哪种语言。

在Java/Java EE中:

其他一些Java实现:

在c#中:

在PHP中:

在Python中:

在C:

在node . js:

  • socket . io: Socket。io也有Python, Java,谷歌GO, Rack的服务器端端口
  • sockjs: sockjs也有用于Python、Java、Erlang和Lua的服务器端端口
  • WebSocket-Node -纯JavaScript客户端&HyBi-10的服务器实现。

绿色。x(也称为Node.x):在Java 7 JVM上运行的类似多语言的节点,基于Netty:

  • 支持Ruby(JRuby), Java, Groovy, Javascript(Rhino/Nashorn), Scala,…
  • 真正的线程。(不像node . js)
  • 理解多种网络协议开箱即用,包括:TCP, SSL, UDP, HTTP, HTTPS, Websockets, SockJS作为Websockets的备份

Pusher.com是一个通过REST API访问的Websocket云服务。

DotCloud云平台支持Websockets, Java (Jetty Servlet容器),NodeJS, Python, Ruby, PHP和Perl编程语言。

Openshift云平台支持websocket, Java (Jboss, Spring, Tomcat &Vertx), PHP (ZendServer &CodeIgniter), Ruby (ROR), Node.js, Python (Django &瓶)的园地。

对于其他语言实现,更多信息请参见维基百科文章

Websockets的RFC: RFC6455