モジュールメッセージパック
msgpack は、JSON よりも軽量なデータ交換形式であり、JSON オブジェクトをバイナリ データにシリアル化して、より高速かつ効率的なデータ交換を実現できます。
msgpack エンコードおよびデコード モジュールは次のように参照されます。
1
2var encoding = require('encoding');
var msgpack = encoding.msgpack;
または
1var msgpack = require('msgpack');
msgpack モジュールは、メッセージ処理のための 2 つの主要なメソッド、エンコードとデコードを提供します。
encode
:指定されたデータを msgpack エンコーディングで書き込みますValue Message.encode(Value data)
。サンプルコード:1 2 3 4 5 6var msgpack = require('msgpack'); var data = { foo: 'bar' }; var buffer = msgpack.encode(data);このメソッドは、最初に書き込む必要のあるデータを渡し、次にそのデータを msgpack 形式のバイナリ データとして保存して返します。エンコード プロセスは非常に高速です。
decode
: メッセージ内のデータを msgpack エンコーディングで解析しますValue Message.decode()
。サンプルコード:1 2 3 4var msgpack = require('msgpack'); var data = msgpack.encode({foo: 'bar'}); var unpackedData = msgpack.decode(data);このとき、解析されるデータはjsonオブジェクトを
{foo: 'bar'}
直接使用できます。
msgpack モジュールは、メッセージ データをシリアル化および逆シリアル化するための比較的効率的な方法です。メッセージ データをバイナリ形式で相手に送信でき、テキスト データ送信時の文字結合と復元の効率の問題を回避できます。このモジュールは、使用に非常に適しています。大量のメッセージ データを処理する必要があるシナリオ。
静的関数
encode
変数をmsgpack形式でエンコードする
1static Buffer msgpack.encode(Value data);
呼び出しパラメータ:
- data: 値、エンコードする変数
返される結果:
- Buffer、エンコードされたバイナリデータを返します
decode
msgpackを使用して文字列を変数にデコードする
1static Value msgpack.decode(Buffer data);
呼び出しパラメータ:
- data:Buffer、デコードされるバイナリデータ
返される結果:
- Value、デコードされた変数を返します