透過 Compression Streams API 在瀏覽器中壓縮及解壓縮

編寫大小較少的網頁應用程式,而且不需自行提供壓縮或解壓縮程式庫

Compression Streams API 是專為使用 gzip 或延遲 (或延遲原始) 格式壓縮及解壓縮資料串流。

因為內建壓縮 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」CanIUse

特別銘謝

主頁橫幅由 Matt Artz 提供,位在 Unsplash 上。