Python:检查Azure队列存储是否存在



我想获得队列存储并创建,如果它不存在。对于大多数类似的场景,我使用exists()方法,但当我查看python文档(https://learn.microsoft.com/en-us/python/api/azure-storage-queue/azure.storage.queue.queueclient?view=azure-python)时,我看不到任何可以解决此问题的方法下面是我的代码:

def send_to_queue(CONN_STR, queue_name, mess):
service_client = QueueServiceClient.from_connection_string(conn_str=CONN_STR)
queue = service_client.get_queue_client(queue_name)
if not queue.exists():
queue.create_queue()
queue.send_message(mess)

我可以在if语句中使用什么来解决这个问题?

您可以使用tryexcept代替。根据docscreate_queue在存储帐户中创建一个新队列。如果存在同名队列,则返回ResourceExistsError,操作失败。

from azure.core.exceptions import ResourceExistsError
def send_to_queue(CONN_STR, queue_name, mess):
service_client = QueueServiceClient.from_connection_string(conn_str=CONN_STR)
queue = service_client.get_queue_client(queue_name)
try:
queue.create_queue()
except ResourceExistsError:
# Resource exists
pass

相关内容

  • 没有找到相关文章

最新更新