gpt4 book ai didi

python-3.x - Pythongenerate_container_sas函数错误,base64编码字符串无效

转载 作者:行者123 更新时间:2023-12-03 06:08:07 26 4
gpt4 key购买 nike

我正在尝试使用 python 生成容器共享访问签名(SAS)。我收到无效的 Base64 编码错误。

 sas_token = generate_container_sas(
account_name=account_name,
container_name=settings.AZURE_CONTAINER_NAME,
account_key=account_key,
permission=BlobSasPermissions(read=True),
expiry=expiry_time,
start=start_time
)

错误信息

异常:无效的 base64 编码字符串:数据字符数 (85) 不能多于 4 的倍数 1

我试图在 azure 文档上查找原因,但失败了。

最佳答案

我在我的环境中尝试并得到了相同的错误:

错误: enter image description here

当您在访问 key 中传递了错误的访问 key 时,就会出现上述错误generate_container_sas条件。

您可以从门户获取访问 key :

enter image description here

当我使用以下代码和正确的访问 key 时。我可以通过 url 获取容器 SAS token 。

代码:

from datetime import datetime,timedelta
from azure.storage.blob import BlobServiceClient,ContainerSasPermissions,generate_container_sas

account_name = 'Your-storage-account-name'
container_name = 'your-container-name'
account_key = 'your-account-key'

expiry_time = datetime.utcnow() + timedelta(hours=1)


permission = ContainerSasPermissions(read=True, write=True, delete=True,
list=True,delete_previous_version=True, tag=True)

token = generate_container_sas(account_name=account_name,
container_name=container_name,
account_key=account_key,
permission=permission,
expiry=expiry_time)

print(token)
container_url = f"https://{account_name}.blob.core.windows.net/{container_name}?{token}"
print(container_url)

输出:

SAS-token: se=2023-09-14T13%3A34%3A28Z&sp=rwdxlt&sv=2023-01-03&sr=c&sig=xxxxx
https://venkat678.blob.core.windows.net/test?se=2023-09-14T13%3A34%3A28Z&sp=rwdxlt&sv=2023-01-03&sr=c&sig=xxxxxx

enter image description here

引用:

azure.storage.blob package | Microsoft Learn

关于python-3.x - Pythongenerate_container_sas函数错误,base64编码字符串无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77104711/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com