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

浏览器支持

  • Chrome:80。 <ph type="x-smartling-placeholder">
  • 边缘:80。 <ph type="x-smartling-placeholder">
  • Firefox:113。 <ph type="x-smartling-placeholder">
  • Safari:16.4. <ph type="x-smartling-placeholder">

来源

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

由于 JavaScript 应用使用 Compression Streams API 的内置压缩功能,因此无需包含压缩库,因此该应用的下载大小变小了。现在,所有浏览器都支持这一实用的 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')
);

演示