Escrever apps da Web menores que não precisam enviar a própria biblioteca de compactação ou descompactação
A API Compression Streams é usada para compactar e descompactar fluxos de dados usando os formatos gzip ou deflate (ou deflate-raw).
Com a compactação integrada, os aplicativos JavaScript não precisam incluir uma biblioteca de compactação, o que reduz o tamanho do download do aplicativo. O Chrome estável e o Safari Technology Preview agora são compatíveis com essa API útil. A compactação de dados é mostrada aqui.
const readableStream = await fetch('lorem.txt').then(
(response) => response.body
);
const compressedReadableStream = readableStream.pipeThrough(
new CompressionStream('gzip')
);
Para descompactar, transmita um fluxo compactado pelo fluxo de descompactação.
const decompressedReadableStream = compressedReadableStream.pipeThrough(
new DecompressionStream('gzip')
);
Demonstração
Suporte ao navegador
A API Compression Streams é compatível com o Chromium 80 e a prévia tecnológica 152 do Safari.