node:zlib unterstützt Callback-, synchrone und Stream-APIs.
| Familie | Unterstützung |
|---|---|
| Deflate | Funktionen zum Komprimieren und Dekomprimieren mit und ohne Wrapper, Sync-Varianten, Klassen und create*-Hilfsfunktionen |
| Gzip | Gzip, gunzip, unzip, Sync-Varianten, Klassen und create*-Hilfsfunktionen |
| Brotli | Funktionen zum Komprimieren und Dekomprimieren, Klassen und create*-Hilfsfunktionen |
| Zstandard | Funktionen zum Komprimieren und Dekomprimieren, Klassen und create*-Hilfsfunktionen |
| Hilfsprogramme | crc32, constants und codes |
const zlib = require("node:zlib");
const input = Buffer.from("hello, zlib!");
const gzip = zlib.gzipSync(input);
zlib.gunzipSync(gzip).toString(); // "hello, zlib!"
const zstd = zlib.zstdCompressSync(input);
zlib.zstdDecompressSync(zstd).toString(); // "hello, zlib!"Callback-Formen erhalten (error, result); synchrone Formen geben einen Buffer
zurück oder werfen.
node:zlib/iter
Das Elide-spezifische Iterator-Modul liefert Transform-Factories für gzip, deflate,
rohes deflate, Brotli und Zstandard. Eine Factory gibt ein Objekt mit
.transform(asyncIterable) zurück; die Ausgabe kommt in Batches von Byte-Chunks an.
import { gzip } from "node:zlib/iter";
async function* input() {
yield new TextEncoder().encode("hello");
}
for await (const batch of gzip().transform(input())) {
for (const chunk of batch) {
// compressed bytes
}
}Verwenden Sie Compression Streams mit Web Streams.
Siehe auch
Reference
Status: Partial · Not measured · since 1.1.0
Exports
| Export | Kind | Status | Notes |
|---|---|---|---|
deflateSync() | function | Full | Compress data using the deflate algorithm (RFC 1951 wrapped in zlib format RFC 1950) |
inflateSync() | function | Full | Decompress data that was compressed with deflate (zlib format) |
deflateRawSync() | function | Full | Compress data using the deflate algorithm in raw mode (no zlib header, RFC 1951) |
inflateRawSync() | function | Full | Decompress raw deflate data (no zlib header) |
gzipSync() | function | Full | Compress data using gzip (RFC 1952) |
gunzipSync() | function | Full | Decompress gzip data (RFC 1952) |
brotliCompressSync() | function | Full | Compress data using the Brotli algorithm (RFC 7932) |
brotliDecompressSync() | function | Full | Decompress Brotli-compressed data (RFC 7932) |
unzipSync() | function | Full | Decompress data with automatic format detection (gzip or deflate) |
constants | property | Full | The constants object exposes zlib, Brotli, and Zstd numeric constants |
| top-level constants | constant | Partial | Z_NO_COMPRESSION, Z_BEST_SPEED, Z_BEST_COMPRESSION, Z_DEFAULT_COMPRESSION, Z_FILTERED, Z_HUFFMAN_ONLY and 73 more |
Not implemented
107 top-level constants such as DEFLATE.