(我正在使用node-amqp和rabbitmq服务器。
我试图猜测如果出现问题,为什么我会有一个关闭事件。例如,如果我尝试打开与队列的连接(参数错误),则会收到错误事件。这是完美的。
但是,在任何错误之后,我也会收到一个关闭的连接(在这种情况下,可能是因为关闭队列的失败套接字)。之后,自动重新连接,我收到(初始)就绪事件。
问题:
connection.on('ready', function() {
do_a_lot_of_things
}).on(error, function(error){
solve_the_problem
});
如果出现问题,我会收到错误,但随后"就绪"事件,它将重新do_a_lot_of_things。我的方法错了吗?
此致敬意
您可以使用
connection.once('ready', function () { … })
(请参阅文档),它将仅在第一个事件上执行处理程序。