6

StackOverflow 在所有页面上都使用 GZip 编码;他们的 websocket 流量似乎也是如此,因为它似乎完全被混淆了。

在此处输入图像描述

他们将如何/使用什么来实现这一目标;相反,由于我的 websocket 服务器托管在没有 IIS 等的独立服务器上,我需要做些什么来实现相同的目标?

还值得注意的http compression是,他们的 websocket 连接请求也没有设置。


完整日志截图:http: //i44.tinypic.com/19s4yr.jpg

4

2 回答 2

6

根据 RFC6455,必须屏蔽从客户端到服务器的 WebSocket 有效负载,不得屏蔽服务器到客户端。屏蔽是通过 32 位掩码的 XORring 有效负载完成的。您在日志中看到的值。

烹饪中有一个 WS 扩展,它提供基于帧的压缩(放气)。这与掩蔽无关。每帧压缩有效的有效负载压缩有效负载,然后屏蔽有效负载(客户端到服务器)。

于 2012-04-08T12:15:57.523 回答
1

我认为这里没有任何 gzipping。看起来 fiddler 已经开始添加对 websockets 的支持,但它仍在进行中。

日志显示一个连接
......然后是 12 个字节的第一条消息(461287-inbox。初始字节 81 8C 显示一个新的、完整的文本帧,带有 4 个字节的掩码和 12 个字节的数据。Fiddler 正确解码了这个。)
。 ..然后是 19 字节的第二条消息(流中的字节 81 93 - 19 字节 - 显示具有 4 字节掩码和 19 字节数据的新的、完整的文本帧)
...然后是 19 字节的第三条消息(后面的字节 81 93 - 大约 44 个字节进入流 - 显示一个新的、完整的、带有 4 字节掩码和 19 字节数据的文本帧)

于 2012-04-08T13:37:45.223 回答