2013-04-22 13 views
8

Sto provando rabbitmq-tutorials, la versione ruby ​​funziona bene, ma la versione node.js non può inviare messaggi. Non so cosa c'è che non va.node-amqp non può inviare messaggi a RabbitMQ

var amqp  = require('amqp'); 
var amqp_hacks = require('./amqp-hacks'); 

var connection = amqp.createConnection({host: 'localhost'}); 

connection.on('ready', function(){ 
    connection.publish('hello_node', 'Hello World!'); 
    console.log(" [x] Sent 'Hello World!'"); 

    amqp_hacks.safeEndConnection(connection); 
}); 

dopo corro node send.js, processo di runing node recv.js non può recv nulla. e rabbitmqctl list_queues non mostra le code hello_node.

risposta

5

È necessario indicare la coda, quindi pubblicare. Quella versione dovrebbe funzionare:

var amqp  = require('amqp'); 
    var amqp_hacks = require('./amqp-hacks'); 

    var connection = amqp.createConnection({host: 'localhost'}); 

    connection.on('ready', function(){ 
      connection.queue('hello_node', {'durable': false}, function(q){ 
       connection.publish('hello_node', 'Hello World!'); 
       console.log(" [x] Sent 'Hello World!' to 'hello_node'"); 

       amqp_hacks.safeEndConnection(connection); 
      }); 
    }); 
+0

Grazie, funziona – nfpyfzyf

Problemi correlati