Потоки сжатия теперь поддерживаются во всех браузерах. Потоки сжатия теперь поддерживаются во всех браузерах.

Поддержка браузера

  • Хром: 80.
  • Край: 80.
  • Фаерфокс: 113.
  • Сафари: 16.4.

Источник

API Compression Streams предназначен для сжатия и распаковки потоков данных с использованием форматов gzip или deflate (или deflate-raw).

Благодаря встроенному сжатию API Compression Streams приложениям 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')
);

Демо