第12章 相互運用性
本章では、AMQ JavaScript を他の AMQ コンポーネントと組み合わせて使用する方法を説明します。AMQ コンポーネントの互換性の概要は、製品の概要 を参照してください。
12.1. 他の AMQP クライアントとの相互運用
AMQP メッセージは AMQP タイプシステムを使用して設定されます。このような一般的な形式は、異なる言語の AMQP クライアントが相互に対話できる理由の 1 つです。
メッセージを送信する場合、AMQ JavaScript は自動的に言語ネイティブの型を AMQP でエンコードされたデータに変換します。メッセージの受信時に、リバース変換が行われます。
AMQP タイプの詳細は、Apache Qpid プロジェクトによって維持される インタラクティブタイプリファレンス を参照してください。
AMQP 型 | 説明 |
---|---|
空の値 | |
true または false の値 | |
単一の Unicode 文字 | |
Unicode 文字のシーケンス | |
バイトのシーケンス | |
署名済み 8 ビット整数 | |
署名済み 16 ビット整数 | |
署名済み 32 ビット整数 | |
署名済み 64 ビット整数 | |
署名なしの 8 ビット整数 | |
署名なしの 16 ビット整数 | |
署名なしの 32 ビット整数 | |
署名なしの 64 ビット整数 | |
32 ビット浮動小数点数 | |
64 ビット浮動小数点数 | |
単一型の値シーケンス | |
変数型の値シーケンス | |
異なるキーから値へのマッピング | |
ユニバーサル一意識別子 | |
制限されたドメインからの 7 ビットの ASCII 文字列 | |
絶対的な時点 |
JavaScript にあるネイティブ型は、AMQP がエンコードできる数よりも少なくなっています。特定の AMQP タイプを含むメッセージを送信するには、 rhea/types.js
モジュールの wrap_
関数を使用します。
AMQP 型 | エンコード前の AMQ JavaScript タイプ | デコード後の AMQ JavaScript タイプ |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
エンコード前の AMQ JavaScript タイプ | AMQ C++ タイプ | AMQ .NET タイプ |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| - | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
エンコード前の AMQ JavaScript タイプ | AMQ Python タイプ | AMQ Ruby タイプ |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| - | - |
|
|
|
|
|
|