如何使用 Python 访问 Azure 中的队列消息?

Posted

技术标签:

【中文标题】如何使用 Python 访问 Azure 中的队列消息?【英文标题】:How can I access queue messages in Azure using Python? 【发布时间】:2019-12-06 11:44:10 【问题描述】:

队列中有一些数据要在我的 python 代码中访问。

我正在使用以下代码:

from azure.storage.queue import QueueService

queue_service = QueueService(account_name='', account_key='')

messages = queue_service.get_messages('queue', num_messages=5)

for message in messages:
    print(message.id)
    print(message.content)

但是内容的输出是一些编码消息的形式。

如何解码?

【问题讨论】:

【参考方案1】:

你可以使用print(base64.b64decode(message.content))

from azure.storage.queue import QueueService
import base64

queue_service = QueueService(account_name='', account_key='')

messages = queue_service.get_messages('queue', num_messages=5)

for message in messages:
    print(message.id)
    print(message.content)
    print(base64.b64decode(message.content))

【讨论】:

【参考方案2】:
from azure.storage.queue import QueueService, QueueMessageFormat
queue_service = QueueService(account_name=account_name, account_key=account_key)
#queue_service.encode_function = QueueMessageFormat.binary_base64decode
queue_service.decode_function = QueueMessageFormat.binary_base64decode
messages = queue_service.get_messages(...

【讨论】:

以上是关于如何使用 Python 访问 Azure 中的队列消息?的主要内容,如果未能解决你的问题,请参考以下文章