使用BlockingConnection消费消息的示例

前面的最小应用中已经使用BlockingConnection发送了消息,并且采用了直接获取消息的方法来消费消息,这里给出一个使用回调函数来消费消息的示例。

import pika


def on_message(channel, method_frame, header_frame, body):
	print(method_frame.deliery_tag)
	print(body)
	channel.basic_ack(delivery_tag=method_frame.delivery_tag)


connection = pika.BlockingConnection()
channel = connection.channel()
channel.basic_consume('test', on_message)
try:
	# 启动Channel的消费监视
	channel.start_consuming()
except KeyboardInterrupt:
	# 结束Channel的消费监视
	channel.stop_consuming()
connection.close()