Compression Streams API
Baseline
Weitgehend verfügbar
*
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Mai 2023 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die Compression Streams API bietet eine JavaScript-API zum Komprimieren und Dekomprimieren von Datenströmen unter Verwendung der gzip- oder deflate-Formate.
Da die Komprimierung eingebaut ist, müssen JavaScript-Anwendungen keine Komprimierungsbibliothek einbinden, was die Download-Größe der Anwendung verringert.
Die Response der Fetch API kann verwendet werden, um Streams in folgende Formate zu konvertieren:
ArrayBufferBlobUint8ArrayString- JSON
Schnittstellen
CompressionStream-
Komprimiert einen Datenstrom.
DecompressionStream-
Dekomprimiert einen Datenstrom.
Beispiele
In diesem Beispiel wird ein Stream mittels gzip-Kompression komprimiert.
const compressedReadableStream = inputReadableStream.pipeThrough(
new CompressionStream("gzip"),
);
Im folgenden Beispiel dekomprimiert eine Funktion einen Blob mittels gzip.
async function DecompressBlob(blob) {
const ds = new DecompressionStream("gzip");
const decompressedStream = blob.stream().pipeThrough(ds);
return await new Response(decompressedStream).blob();
}
Spezifikationen
| Spezifikation |
|---|
| Compression> # compression-stream> |