Reputation: 1908
Do I really need to instantiate the queue "queue = connection.queue(...)" every time I want to use it?
Server (node.js):
queue = connection.queue('incoming', { // <--- DO I REALLY NEED THAT FOR EVERY REQUEST?
durable : true,
exclusive : false }, function() {});
queue.subscribe(function(msg) {
// Unsubcribe here. Maybe there is something like a once listener?
console.log("RECEIVED: "+msg)
//res.send(msg.data);
queue.unsubscribe(ctag);
res.redirect('/home');
}).addCallback(function(ok) { ctag = ok.consumerTag; });
exchange.publish('msg_queue', 'functional!', { // request
replyTo: 'incoming'
});
If queue = connection.queue(...);
is instantiated with the server, the first request using the queue is successful, but the followings requests throw an error:
Error: NOT_FOUND - no queue 'incoming' in vhost '/'
at Queue._onMethod (/Users/cassiomelo/code/cubix/cubix_nodejs/node_modules/amqp/amqp.js:1720:15)
Upvotes: 0
Views: 951
Reputation: 495
For an rpc example ,that keeps the reply queue hanging around, please have a look at How to create REP/REQ on Rabbit.js
Upvotes: 1