Azure BlobServiceClient 错误 InvalidResourceName
Azure BlobServiceClient Error InvalidResourceName
将文件上传到 Azure Blob 存储容器时遇到问题,使用 azure.storage.blob for python 2.7。 (我知道我应该使用更新的 python,但它是大型 ROS 应用程序的一部分,因此不仅仅是升级它。)
from azure.storage.blob import BlobServiceClient
...
container_name = "operationinput"
self.back_up_root = "~/backup/sql/lp/"
self.back_up_root = os.path.expanduser(self.back_up_root)
file = 'test.sql'
try:
client = BlobServiceClient.from_connection_string(conn_str=connection_string)
blob = client.get_blob_client(container='container_name', blob='datafile')
except Exception as err:
print(str(err))
with open(self.back_up_root + file, "rb") as data:
blob.upload_blob(data)
我收到以下错误:
azure.core.exceptions.HttpResponseError: The specifed resource name contains invalid characters.
RequestId:3fcb6c26-101e-007e-596d-1c7d61000000
Time:2022-02-07T21:58:17.1308670Z
ErrorCode:InvalidResourceName
我发现的所有 post 都是指使用大写字母左右的人,但我有:
操作输入
数据文件
一切都应该在规格范围内。
有什么想法吗?
我们尝试使用以下示例代码使用 SAS 令牌将文件上传到 Azure blob 存储(容器),并且能够成功实现。
代码示例:-
from azure.storage.blob import BlobClient
upload_file_path="C:\Users\Desktop\filename"
sas_url="https://xxx.blob.core.windows.nethttps://cloudsh3D?sastoken"
client = BlobClient.from_blob_url(sas_url)
with open(upload_file_path,'rb') as data:
client.upload_blob(data)
print("**file uploaded**")
为了生成 SAS url
和 connection string
我们选择如下:-
有关详细信息,请参阅此 Microsoft 文档:Allow or disallow public read access for a storage account
将文件上传到 Azure Blob 存储容器时遇到问题,使用 azure.storage.blob for python 2.7。 (我知道我应该使用更新的 python,但它是大型 ROS 应用程序的一部分,因此不仅仅是升级它。)
from azure.storage.blob import BlobServiceClient
...
container_name = "operationinput"
self.back_up_root = "~/backup/sql/lp/"
self.back_up_root = os.path.expanduser(self.back_up_root)
file = 'test.sql'
try:
client = BlobServiceClient.from_connection_string(conn_str=connection_string)
blob = client.get_blob_client(container='container_name', blob='datafile')
except Exception as err:
print(str(err))
with open(self.back_up_root + file, "rb") as data:
blob.upload_blob(data)
我收到以下错误:
azure.core.exceptions.HttpResponseError: The specifed resource name contains invalid characters.
RequestId:3fcb6c26-101e-007e-596d-1c7d61000000
Time:2022-02-07T21:58:17.1308670Z
ErrorCode:InvalidResourceName
我发现的所有 post 都是指使用大写字母左右的人,但我有: 操作输入 数据文件
一切都应该在规格范围内。
有什么想法吗?
我们尝试使用以下示例代码使用 SAS 令牌将文件上传到 Azure blob 存储(容器),并且能够成功实现。
代码示例:-
from azure.storage.blob import BlobClient
upload_file_path="C:\Users\Desktop\filename"
sas_url="https://xxx.blob.core.windows.nethttps://cloudsh3D?sastoken"
client = BlobClient.from_blob_url(sas_url)
with open(upload_file_path,'rb') as data:
client.upload_blob(data)
print("**file uploaded**")
为了生成 SAS url
和 connection string
我们选择如下:-
有关详细信息,请参阅此 Microsoft 文档:Allow or disallow public read access for a storage account