The zlib.deflate() method is an inbuilt application programming interface of the Zlib module which is used to compress a chunk of data.
Syntax:
javascript
Output:
javascript
Output:
zlib.deflate( buffer, options, callback )Parameters: This method accept three parameters as mentioned above and described below:
- buffer: It can be of type Buffer, TypedArray, DataView, ArrayBuffer, and string.
- options: It is an optional parameter that holds the zlib options.
- callback: It holds the callback function.
// Node.js program to demonstrate the
// deflate() method
// Including zlib module
const zlib = require("zlib");
// Declaring input and assigning
// it a value string
var input = "Geeks";
// Calling deflate method
zlib.deflate(input, (err, buffer) => {
if (!err) {
console.log(buffer.toString('base64'));
}
else {
console.log(err);
}
});
console.log("Data Compressed...");
Data Compressed... eJxzT03NLgYABXQB8A==Example 2:
// Node.js program to demonstrate the
// deflate() method
// Including zlib module
const zlib = require("zlib");
// Declaring input and assigning
// it a value string
var input = "Geeks";
// Calling deflate method
zlib.deflate(input, (err, buffer) => {
if (!err) {
console.log(buffer.toString('bas64'));
}
else {
console.log(err);
}
});
console.log("Data Compressed...");
Data Compressed...
buffer.js:631
throw new ERR_UNKNOWN_ENCODING(encoding);
^
TypeError [ERR_UNKNOWN_ENCODING]: Unknown encoding: bas64
at stringSlice (buffer.js:631:9)
at Buffer.toString (buffer.js:667:10)
at Deflate.zlib.deflate [as cb]
(/home/runner/BeautifulMiserlySourcecode/index.js:17:24)
at Deflate.zlibBufferOnEnd (zlib.js:133:10)
at Deflate.emit (events.js:203:15)
at Deflate.EventEmitter.emit (domain.js:448:20)
at endReadableNT (_stream_readable.js:1143:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
Here, an error occurs in encoding the data so, error is thrown.
Reference: https://nodejs.org/api/zlib.html#zlib_zlib_deflate_buffer_options_callback