【Node.js24.x】Object::deflateRaw()メソッドの使い方
deflateRawメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
deflateRawメソッドは、Node.jsのzlibモジュールにおいて、入力されたデータをDeflateアルゴリズムを用いて圧縮するメソッドです。このメソッドの大きな特徴は、「Raw(生)」という名が示す通り、一般的なzlib圧縮で付加されるヘッダーやトレーラー(フッター)を含まずにデータのみを圧縮することです。
通常、zlib圧縮ではデータの整合性を確認するためのヘッダーやチェックサム情報が付与されますが、deflateRawメソッドを使用すると、これらの付加情報なしで純粋なDeflate圧縮データが得られます。これにより、最終的な圧縮データのサイズをわずかながら削減できるメリットがあります。
この特性から、deflateRawメソッドは、あらかじめ圧縮データのフォーマットが定められており、zlibヘッダーが不要なプロトコルを扱う場合や、特定の互換性要件があるシステム間でデータをやり取りする際に特に役立ちます。例えば、HTTPのContent-Encodingヘッダーで「deflate」が指定された場合などに利用されることがあります。システムエンジニアを目指す初心者の方にとっては、データの圧縮方法に種類があること、そして目的によって適切な圧縮形式を選択することが重要であることを理解する上での一例となります。
構文(syntax)
1const { deflateRaw } = require('node:zlib'); 2 3const inputBuffer = Buffer.from('String to compress.'); 4 5deflateRaw(inputBuffer) 6 .then(compressedBuffer => { 7 // compressedBuffer に圧縮されたデータ (Buffer) が格納されます。 8 }) 9 .catch(error => { 10 // error に圧縮中に発生したエラーオブジェクトが格納されます。 11 });
引数(parameters)
buffer, options, callback
- buffer: Buffer: 圧縮するデータを含むバッファ
- options: object: 圧縮オプションを指定するオブジェクト
- callback: function: 圧縮完了後に呼び出されるコールバック関数
戻り値(return)
戻り値なし
戻り値はありません