代码之家  ›  专栏  ›  技术社区  ›  Roger Lipscombe

在异步模式下使用pika,如何获取名为队列的服务器的名称?

  •  0
  • Roger Lipscombe  · 技术社区  · 10 年前

    我正在关注 asynchronous consumer example ,我想声明一个名为队列的服务器,如下所示:

    channel.queue_declare(on_queue_declareok, '')
    

    我的回调如下所示:

    def on_queue_declareok(frame):
        queue_name = ????    # What goes here?
        channel.queue_bind(on_bindok, queue_name, EXCHANGE_NAME, ROUTING_KEY)
    

    如何从 frame 参数如果我打印出来,它看起来像这样:

    <METHOD(['frame_type=1', 'channel_number=1',
        "method=<Queue.DeclareOk(['queue=amq.gen-NqdbEFHZdrtC4iLNdJpbjQ',
            'message_count=0', 'consumer_count=0'])>"])>
    

    队列名称在那里。这是什么?如何获取队列名称?

    1 回复  |  直到 10 年前
        1
  •  1
  •   Vor    10 年前

    您可以使用 frame.method.queue .