4.2. メッセージの受信
このクライアントプログラムは <connection-url>
を使用してサーバーに接続し、ソース <address>
の受信側を作成し、終了するか、<count>
メッセージに到達するまでメッセージを受信します。
例: メッセージの受信
"use strict"; var rhea = require("rhea"); var url = require("url"); if (process.argv.length !== 4 && process.argv.length !== 5) { console.error("Usage: receive.js <connection-url> <address> [<message-count>]"); process.exit(1); } var conn_url = url.parse(process.argv[2]); var address = process.argv[3]; var desired = 0; var received = 0; if (process.argv.length === 5) { desired = parseInt(process.argv[4]); } var container = rhea.create_container(); container.on("receiver_open", function (event) { console.log("RECEIVE: Opened receiver for source address '" + event.receiver.source.address + "'"); }); container.on("message", function (event) { var message = event.message; console.log("RECEIVE: Received message '" + message.body + "'"); received++; if (received == desired) { event.receiver.close(); event.connection.close(); } }); var opts = { host: conn_url.hostname, port: conn_url.port || 5672, // To connect with a user and password: // username: "<username>", // password: "<password>", }; var conn = container.connect(opts); conn.open_receiver(address);
サンプルの実行
サンプルプログラムを実行するには、サンプルプログラムをローカルファイルにコピーし、python
コマンドを使用して呼び出します。
$ node receive.js amqp://localhost queue1