【问题标题】:How to get existing queue parameters in nodejs amqp?如何在nodejs amqp中获取现有队列参数?
【发布时间】:2014-04-14 16:00:33
【问题描述】:

我正在使用 amqplib 的 send.js:

var rabbitMQ = require('amqplib');

rabbitMQ.connect('amqp://localhost').then(function(connection) {
  connection.createConfirmChannel().then(function(channel){
    channel.assertQueue('testQ').then(function(queue){

      channel.sendToQueue('testQ', new Buffer('foobar'), {}, function(err, ok){
        console.log(err?'nacked':'acked');
        connection.close();
      });

    }, console.warn);
  }, console.warn);
}, console.warn);

还有一个使用 amqp 的 receive.js:

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

// Wait for connection to become established.
connection.on('ready', function () {
  connection.queue('testQ', function (q) {
    q.bind('#');
    q.subscribe(console.log);
  });
});

connection.on('error', console.log);

问题是,队列的默认选项不匹配。在使用 amqplib 发送后尝试使用 amqp 读取或在使用 amqp 订阅后使用 amqplib 发送时,我收到 406 precondition failed 错误。我很乐意在任一配置上进行调整,只要它有效。

【问题讨论】:

    标签: node.js amqp node-amqp


    【解决方案1】:

    在两端使用 amqplib 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-01
      • 2020-08-06
      • 1970-01-01
      • 1970-01-01
      • 2011-01-08
      • 2019-10-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多