我对nodejs很新。我需要使用common-mq模块向rabbitMQ发送消息。我已使用以下命令安装此软件包
npm install common-mq
我无法使用此编写发件人和收件人。任何人都可以帮我用nodejs写发送者和接收者吗? var commonmq = require('common-mq'); var connect = commonmq.connect('amqp:// localhost:5672 / queue');
此后我该怎么办? sender.js如下所示
var commonmq = require("common-mq");
var queue = commonmq.connect('amqp://localhost:5672/queue', { implOptions: { defaultExchangeName: '' }});
var msg =JSON.stringify("Hello world");
console.log("going for ready");
queue.on('ready',function () {
console.log("inside event");
setTimeout(function() { queue.publish({ task: 'take out trash' }); }, 1000);
});
//queue.publish({ task: 'sweep floor' });
queue.on('error',function(err){
console.log("error is:"+err);
});
接收者代码就像这样
var commonmq = require("common-mq");
var queue = commonmq.connect('amqp://localhost:5672/queue', { implOptions: { defaultExchangeName: '' }
});
queue.on('message', function(message) {
console.log('Got a new message', message);
});
queue.on('error',function(e){
console.log("errrorrr ",e);
});
未收到任何消息。请建议我在哪里弄乱这些东西?
答案 0 :(得分:0)
设置服务后,您可以收听新消息或发送新消息。
<强>接收器:强> 接收方侦听队列并根据消息执行操作:
//setup the service
var queue = commonmq.connect('amqp://localhost:5672/queue');
queue.publish(yourMessageAsObject);
<强>发件人强>: 发件人发布新邮件。即使是接收者也可以做到......
for ( i =0 ; i<10 ; i++); // This means loop till i = 10 at which point loop breaks. This is because of ending the for loop with ';'
{ // start of scope
cout<<i ; // Print the value of i which is 10 now
} // end of scope
您可以收听一些其他事件(例如,如果出现错误)。只需查看npm网站上的手册。