【问题标题】:netty websockets hornetq 2.2.5 fails with latest chrome on Sec-WebSocket-Accept headernetty websockets hornetq 2.2.5 在 Sec-WebSocket-Accept 标头上使用最新的 chrome 失败
【发布时间】:2012-04-08 02:16:21
【问题描述】:

我正在尝试在 hornetq 2.2.5 发行版中运行 netty stomp websockets 示例,但它不适用于 Chrome 最新版本。 Chrome 在 javascript 控制台中显示以下错误 -

Error during WebSocket handshake: 'Sec-WebSocket-Accept' header is missing

在论坛上阅读似乎表明这与 Netty 本身有关。我知道 chrome 太快了,无法适应不断变化的 websockets 协议,因此它抱怨没有从服务器返回标头。带有 hornetq 发行版的 Netty 版本似乎是 3.2.3。如果这仅与 Netty 有关?这可以通过使用具有相同 hornetq 分布的更高版本的 Netty 来解决吗?

【问题讨论】:

  • 我不是 hornetq 专家,但您可能想尝试升级到 netty-3.3.1.Final 看看是否有帮助
  • 确实尝试过..通过更换罐子。不用找了。似乎 hornetq 有一个 websockethandler,它仍然在旧版本的协议上 [link]grepcode.com/file/repository.jboss.org/nexus/content/…

标签: google-chrome websocket netty hornetq


【解决方案1】:

我认为 HornetQ 使用的是旧的 netty websocket 包。为了支持 chrome,HornetQ 需要使用新的 websocketx 包。

websocket 和 websocketx 包都将在 Netty v3.X 中提供,以实现向后兼容性。有些人扩展了websocket 包并编写了自己的代码来支持较新版本的websocket 协议。

在 Netty v4 中,websocket 包已被删除。

【讨论】:

    猜你喜欢
    • 2012-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-04
    • 2016-04-19
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    相关资源
    最近更新 更多