Scrivi app web più piccole che non devono includere una propria libreria di compressione o decompressione.
L'API Compression Streams comprime e decomprime i flussi di dati utilizzando i formati gzip o deflate (o deflate-raw).
Con la compressione incorporata, le applicazioni JavaScript non richiedono l'inclusione di una libreria di compressione, riducendo così le dimensioni di download dell'applicazione. Chrome stabile e Safari Technology Preview ora supportano questa utile API. La compressione dei dati è mostrata di seguito.
const readableStream = await fetch('lorem.txt').then(
(response) => response.body
);
const compressedReadableStream = readableStream.pipeThrough(
new CompressionStream('gzip')
);
Per decomprimere, collega un flusso compresso attraverso il flusso di decompressione.
const decompressedReadableStream = compressedReadableStream.pipeThrough(
new DecompressionStream('gzip')
);
Demo
Supporto del browser
L'API Compression Streams è supportata da Chromium 80 e Safari Technology Preview 152. Per gli altri browser, seleziona CanIUse.