Komprimierung und Dekomprimierung im Browser mit der Compression Streams API

Kleinere Webanwendungen schreiben, die keine eigene Komprimierungs- oder Dekomprimierungsbibliothek benötigen

Die Compression Streams API dient zum Komprimieren und Dekomprimieren von Datenströmen im gzip-, Deflate- oder deflate-raw-Format.

Mit integrierten komprimierten JavaScript-Anwendungen müssen Sie keine Komprimierungsbibliothek hinzufügen. Dadurch wird die Downloadgröße der Anwendung reduziert. Die stabile Chrome- und Safari-Technologievorschau unterstützen jetzt diese nützliche API. Die Daten werden unten komprimiert.

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

Leite zum Entpacken einen komprimierten Strom durch den Dekomprimierungsstream.

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

Demo

Unterstützte Browser

Die Compression Streams API wird von Chromium 80 und Safari Technology Preview 152 unterstützt. Bei anderen Browsern setzen Sie das Häkchen bei CanIUse.

Danksagungen

Hero-Image von Matt Artz auf Unsplash