【问题标题】:What browsers support HTML5 WebSocket API?哪些浏览器支持 HTML5 WebSocket API?
【发布时间】:2010-11-18 05:29:51
【问题描述】:

我要开发一个在浏览器中运行的即时通讯应用程序。

哪些浏览器支持WebSocket API

【问题讨论】:

  • 我们在我们的 Java WebSocket 项目网站上保留了支持 WebSocket 的浏览器的最新列表:jwebsocket.org/browsers.htm
  • 我们应该尽量让这些答案保持最新,对吗?我认为这比重新询问要好。
  • HTML5 和相关功能的最佳站点是caniuse.com
  • 有一个很好的关于 HTML5 websockets 的社区 wiki:stackoverflow.com/questions/4262543/using-html-5-websockets
  • @meagar - 我不同意。我认为它应该被保护为 wiki 以防止新的答案,但保留当前有用的答案。此问题的浏览量超过 100,000 次。

标签: javascript web-applications html network-programming websocket


【解决方案1】:

客户端

  • 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。启用它see here
  • 歌剧 11 - with support disabled。启用它see here
  • HyBi-07+:
  • Chrome 14.0
  • Firefox 6.0 - 前缀:MozWebSocket
  • IE 9 - 通过downloadable Silverlight extension
  • 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
  • 铬 16
  • 火狐11
  • Opera 12.10 / Opera Mobile 12.1

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

请参阅caniuse,了解桌面和移动浏览器中 WebSockets 支持的当前状态。

请参阅Autobahn WebSockets 中包含的 WS 测试套件中的 test reports,了解功能/协议一致性测试。


服务器端

这取决于您使用的语言。

在 Java/Java EE 中:

其他一些 Java 实现:

在 C# 中:

在 PHP 中:

在 Python 中:

在 C 中:

在 Node.js 中:

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

Vert.x (also known as 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 Container)、NodeJS、Python、Ruby、PHP和Perl编程语言。

Openshift 云平台支持 websockets,以及 Java (Jboss, Spring, Tomcat & Vertx), PHP (ZendServer & CodeIgniter), Ruby (ROR), Node.js, Python (Django & Flask) 平台。

对于其他语言实现,see the Wikipedia article for more information

Websockets 的 RFC:RFC6455

【讨论】:

  • +1 以保持最新状态。歌剧will also have Websockets support 10.70.
  • 对,我想他们在 Opera 11 中重命名了 Opera 10.70 opera.com/browser/next
  • @Tony: IE9支持 WebSockets。 HTML5 Labs 中提供了作为附加组件提供的实验性支持,但尚未发货和准备就绪。
  • Webbit 是一个优秀的 Java WebSocket 服务器,应该添加到列表中。
  • 在 Go-lang 中,websockets 在标准库中:go.net/websocket
猜你喜欢
  • 2011-06-04
  • 2013-12-03
  • 1970-01-01
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多