编写无需提供自己的压缩或解压缩库的较小 Web 应用
Compression Streams API 用于使用 gzip 或 deflate(或 deflate-raw)格式压缩和解压缩数据流。
使用内置压缩功能的 JavaScript 应用无需包含压缩库,即可缩减应用的下载大小。稳定版 Chrome 和 Safari 技术预览版现在支持此实用的 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')
);
演示
浏览器支持
Chromium 80 和 Safari Technology Preview 152 支持 Compression Streams API。 对于其他浏览器,请选中 CanIUse。