Ich schreibe eine Node.js-Anwendung, die auf RabbitMQ beruht. Ich verwende node-amqp als die Bibliothek der Wahl, um eine Verbindung zu RabbitMQ herzustellen.RabbitMQ und node-amqp: Exchange im bestätigten Modus bestätigt nicht - warum?
Sobald ich eine Verbindung zu RabbitMQ hergestellt haben, erste, was ich tun werde, ist, einen Austausch zu schaffen:
var options = { autoDelete: false, confirm: true, durable: true, type: 'direct' };
connection.exchange('myExchange', options, function (myExchange) {
// ...
});
Dieses perfekt funktioniert. Wie Sie sehen können, ich schaffe den Austausch confirm: true
verwenden, daher erwarte ich, dass der Austausch danach in confirm Modus.
Jetzt ein Problem erscheint, wenn ich versuche, eine Nachricht zu veröffentlichen:
var options = {};
myExchange.publish('', { data: 'foobar' }, options, function() {
// ...
});
Das Problem ist, dass der Rückruf der publish
Funktion nie aufgerufen wird - obwohl die Nachricht erfolgreich veröffentlicht wurde (wie ich innerhalb RabbitMQ sehen kann Web-Management-Tool).
Verstandst I-Modus in einer falschen Weise bestätigen? Ist das ein Fehler mit node-amqp?
Jede Hilfe :-)
dies scheint in dem Knoten AMQP Version 0.2.0 behoben werden. Die veröffentlichte npm-Version funktioniert für mich. – chevett