【问题标题】:Are WebSockets not supported in FirefoxFirefox 不支持 WebSockets
【发布时间】:2011-10-01 23:58:19
【问题描述】:

我在 Ubuntu 11.04 中运行 Firefox 7,我注意到 socket.io 正在从 web 套接字退回到 xhr-polling,所以我在 Firefox 的控制台中输入了WebSocket,然后得到了

[00:48:21.224] ReferenceError: WebSocket is not defined

在 Google Chrome 14 上我得到了

WebSocket
function WebSocket() { [native code] }

根据this,WebSockets 从 firefox 4 开始部分支持,从 firefox 6 开始完全支持。

只有 linux 上的 firefox 不同吗?

【问题讨论】:

    标签: firefox google-chrome websocket


    【解决方案1】:

    在 Firefox 4/5 中,WebSockets 支持存在但被禁用(通过 about:config 激活)。在 Firefox 6 中,Mozilla 默认启用 WebSockets,但添加了“Moz”前缀。另外,请注意 Firefox 6 使用较新的 HyBi 协议和 W3C API。 Chrome 在 Chrome 14 中添加了 HyBi 协议,尽管 Chrome 从未使用过前缀。

    该协议实际上已经完成,官方第一版预计将在大约 6 周后发布(电汇格式在几个月内没有显着变化)。该 API 几个月来也相当稳定,Chrome 14+ 和 Firefox 6+ 基本上具有相同的 API 实现。出于某种原因,Mozilla 选择了比平常更加谨慎的 WebSockets 前缀。也许这是对 Google 对不稳定 API 前缀不够谨慎的反应。

    除非您对二进制消息支持、特定错误和关闭条件处理或子协议选择感兴趣,否则 WebSockets API 与 Chrome 几年前推出以来基本相同。如果您正在实现 WebSockets 服务器,那么您将需要了解过去 2 年中发生重大变化的协议的各个版本。

    【讨论】:

    • FIREFOX 7 支持 hybi-10;不是 Firefox 6。
    • @Roger,Firefox 6 支持 HyBi-06。任何最近的 HyBi 协议规范版本 (HyBi 06-17) 之间几乎没有线级协议差异。这实际上是两个 WebSocket 协议:Hixie 和 HyBi(HyBi-00 只是 Hixie-76 的副本)。 Hixie-76 与 Hixie-75 非常相似,但涉及一个新的握手挑战。 HyBi 引入了一种全新的帧格式(包括客户端-服务器负载屏蔽)并显着改变了握手。这些变化是在 HyBi 系列的早期进行的。从那以后,它主要是规范文本重构(对线路格式进行了细微的调整)。
    • Firefox 6 和 7 之间存在重大差异。
    • @Roger,不,协议中存在一些细微差别。这是diff of the handshake。没有有趣的差异。 Sec-WebSocket-Extension 是可选的,是一个临时的想法,它消失了,并没有在服务器端实现。构图是一样的。唯一的实际差异是对关闭状态代码的一些细微更改(不是重大更改)。比较:HyBi 7HyBi 8
    • 是行不行的问题;不是细节上的差异有多大。
    【解决方案2】:

    【讨论】:

    • 如果你的意思是“像 Chrome 实现的那样”,那么“也许”。 Chrome 的行为实际上在不同版本中发生了变化,因为规范仍在不断变化。这就是 Mozilla 的实现带有前缀的原因:行为尚未最终确定。
    【解决方案3】:

    Firefox 7“开箱即用”支持 hybi-10。我一直在针对我的 Firefox 7 支持 hybi-10 “直接开箱即用”运行它。我一直在针对我的 websocket 服务器运行它。您可以使用 Firefox 7 尝试我的在线演示,如果您有任何问题,请告诉我。我已经在 Ubuntu 11 上对其进行了测试。我现在已经设置好了。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    • 2018-05-18
    • 2014-03-28
    • 1970-01-01
    • 2017-07-09
    • 1970-01-01
    • 2023-04-03
    相关资源
    最近更新 更多