Kompresja i dekompresja w przeglądarce z użyciem interfejsu API Kompresji Streams

pisać mniejsze aplikacje internetowe, które nie muszą wysyłać własnej biblioteki kompresji i dekompresji;

Interfejs Compression Streams API służy do kompresowania i rozpakowywania strumieni danych za pomocą formatów gzip lub deflate (lub deflate-raw).

Dzięki wbudowanej kompresji aplikacje JavaScript nie muszą zawierać biblioteki kompresji, co zmniejsza rozmiar aplikacji pobieranej z sieci. Stabilna wersja Chrome i Safari w ramach Technology Preview obsługują teraz ten przydatny interfejs API. Tutaj możesz zobaczyć, jak kompresować dane.

const readableStream = await fetch('lorem.txt').then(
  (response) => response.body
);
const compressedReadableStream = readableStream.pipeThrough(
  new CompressionStream('gzip')
);

Aby zdekompresować, prześlij skompresowany strumień przez strumień dekompresji.

const decompressedReadableStream = compressedReadableStream.pipeThrough(
  new DecompressionStream('gzip')
);

Prezentacja

Obsługa przeglądarek

Interfejs Compression Streams API jest obsługiwany od wersji Chromium 80 i Safari Technology Preview 152.