websocket 扩展位

Posted

技术标签:

【中文标题】websocket 扩展位【英文标题】:websocket extension bits 【发布时间】:2012-11-22 23:47:43 【问题描述】:

我正在用 Python 编写一个 websocket 服务器实现,但我对扩展协商的工作原理有点迷茫。当然有 Sec-WebSocket-Extensions 标头可用于客户端请求扩展和服务器允许/拒绝它们。正是这些扩展与 RSV1、RSV2 和 RSV3 位的关系让我有些困惑。

deflate-frame 扩展使用 RSV1。我知道没有其他扩展。如果/当它们被创建时,它们将如何映射到 RSV1、RSV2 和 RSV3?为什么每个 WebSocket 帧都会传输这些信息?

我可能是疏忽了,没有用放大镜仔细研究 RFC,但我似乎找不到任何可以解释这一点的东西。

【问题讨论】:

【参考方案1】:

WebSocket 扩展在不同于 WebSocket 协议本身 (RFC6455) 的 RFC 中指定。

WebSocket 工作组“未采用”按帧压缩而不是按消息压缩:

http://www.ietf.org/mail-archive/web/hybi/current/msg09816.html https://datatracker.ietf.org/doc/html/draft-ietf-hybi-permessage-compression-04

【讨论】:

以上是关于websocket 扩展位的主要内容,如果未能解决你的问题,请参考以下文章

小程序 websocket

websocket

关于websocket数据传输

记websocket遇到的问题以及解决方法

websocket为啥只需一次握手

websocket入门