gpt4 book ai didi

javascript - WebSocket 是如何压缩消息的?

转载 作者:行者123 更新时间:2023-12-03 13:17:02 24 4
gpt4 key购买 nike

JSON.stringify 显然不是很节省空间。例如,[123456789,123456789] 占用 20+ 个字节,而它可能只需要大约 5 个字节。websocket 在发送到流之前会压缩它的 JSON 吗?

最佳答案

WebSocket 的核心只是一组 TEXT 或 BINARY 数据的框架。
它自己不执行压缩。
然而,WebSocket 规范允许扩展,并且已经有各种压缩扩展(其中之一的正式规范已最终确定)。
截至今天(2018 年 8 月),接受的压缩规范为 permessage-deflate .
在野外看到的一些扩展:

  • permessage-deflate - 使用 deflate 压缩整个消息的正式规范的名称,无论 websocket 帧的数量如何。
  • x-webkit-deflate-frame - 压缩每个原始 websocket 数据帧的早期提议的压缩。已被 Chrome 和 Safari 使用。 (现已在 Chrome 和 Safari 中弃用)
  • perframe-deflate - 上述压缩的重命名版本。被各种 websocket 服务器实现所使用,还有 briefly showed up in various WebKit based clients . (在现代浏览器中完全弃用,但仍然出现在各种 WebSocket 客户端库中)

  • 值得注意的是, permessage-deflate扩展是 PMCE(每消息压缩扩展)系列中的第一个,最终将包括其他压缩方案( ones being discussedpermessage-bzip2permessage-lz4permessage-snappy)

    关于javascript - WebSocket 是如何压缩消息的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19298651/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com