【问题标题】:Access Chrome's internal gzip routine from Javascript从 Javascript 访问 Chrome 的内部 gzip 例程
【发布时间】:2012-07-19 03:01:38
【问题描述】:

所有现代浏览器都包含用于与服务器交换压缩数据的 gzip 例程。谁能指出我编写允许 Javascript 使用此例程的 Chrome 扩展程序的正确方向?

我想在通过 WebSocket 将数据发送到服务器之前用 Javascript 压缩一些数据,Chrome 内置的 deflate 例程肯定比我用 Javascript 编写的任何东西都要快。

【问题讨论】:

  • 有趣的问题。我想知道这是否可以在传输层上完成。 WebSockets 是否有安全选项(因为 SSL 会自动压缩数据)?
  • 是的,根据html5rocks.com/en/tutorials/websockets/basics/…,如果您使用“wss://”作为协议打开您的套接字,它将使用 SSL。
  • @Thilo:你确定 SSL 会压缩数据吗?它加密数据,但恕我直言,它不会“自行”压缩。
  • @Thilo:见belshe.com/2010/11/18/ssl-compression-and-you - SSL 压缩几乎从不使用,您需要 SPDY 来实际压缩数据(Chrome 支持但服务器也必须支持它)。

标签: javascript google-chrome google-chrome-extension websocket gzip


【解决方案1】:

如果 javascript 实现对您来说不够快,您可以使用 native client

您将在 c/c++ 中使用一些 gzip 库,并编写胶水代码,以便 javascript 可以通过本机客户端调用它。如果可能的话,它应该接近或等于调用 chrome 的内部例程所获得的速度。

【讨论】:

    【解决方案2】:

    基于this answer to a Stack Overflow question,完全没有必要手动将 gzip 应用到 WebSocket。从版本 19 开始,Chrome 显然会在服务器支持时自动压缩 WebSocket 流量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-13
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      • 1970-01-01
      • 2012-07-11
      • 2013-04-02
      • 2015-07-11
      相关资源
      最近更新 更多