现在,所有浏览器都支持压缩流

Browser Support

  • Chrome: 80.
  • Edge: 80.
  • Firefox: 113.
  • Safari: 16.4.

Source

压缩流 API 用于使用 gzip 或 deflate(或 deflate-raw)格式压缩和解压缩数据流。

借助 Compression Streams API 的内置压缩功能,JavaScript 应用无需包含压缩库,从而减小了应用的下载大小。此实用 API 现已在所有浏览器中受支持。

压缩数据

以下代码段展示了如何压缩数据:

const readableStream = await fetch('lorem.txt').then(
  (response) => response.body
);
const compressedReadableStream = readableStream.pipeThrough(
  new CompressionStream('gzip')
);

解压缩数据

若要解压缩,请在解压缩流中用管道传输压缩的流。

const decompressedReadableStream = compressedReadableStream.pipeThrough(
  new DecompressionStream('gzip')
);

演示