圧縮ストリームがすべてのブラウザでサポートされるようになりました。

対応ブラウザ

  • 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')
);

デモ