web api overview
Compression Streams API
Available in workers
The Compression Streams API provides a JavaScript API for compressing and decompressing streams of data using the gzip or deflate formats.
Built in compression means that JavaScript applications will not need to include a compression library, which makes the download size of the application smaller.
The Fetch API’s Response can be used to convert streams to:
ArrayBufferBlobUint8ArrayString- JSON
Interfaces
CompressionStream- : Compresses a stream of data.
DecompressionStream- : Decompresses a stream of data.
Examples
In this example a stream is compressed using gzip compression.
const compressedReadableStream = inputReadableStream.pipeThrough(
new CompressionStream("gzip"),
);
In the following example a function decompresses a blob using gzip.
async function DecompressBlob(blob) {
const ds = new DecompressionStream("gzip");
const decompressedStream = blob.stream().pipeThrough(ds);
return await new Response(decompressedStream).blob();
}
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.