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

浏览器支持

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

来源

Compression Streams 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')
);

演示