如何在Azure上传文件后获取Blob-URL
如何在Azure上传文件后获取Blob-URL
我正在尝试连接Web和工艺角色。所以我有一个页面,用户可以上传视频文件。文件很大,所以我不能使用查询发送文件。这就是为什么我试图将它们上传到Blob存储并通过查询发送URL。但我不知道如何获取此URL。
有人能帮我吗?
admin 更改状态以发布 2023年5月24日
对于Python用户,您可以使用blob_client.url
不幸的是,它在learn.microsoft.com中没有记录
from azure.storage.blob import BlobServiceClient # get your connection_string - look at docs blob_service_client = BlobServiceClient.from_connection_string(connection_string) container_client = blob_service_client.get_container_client(storage_container_name) You can call blob_client.url blob_client = container_client.get_blob_client("myblockblob") with open("pleasedelete.txt", "rb") as data: blob_client.upload_blob(data, blob_type="BlockBlob") print(blob_client.url)
将返回https://pleasedeleteblob.blob.core.windows.net/pleasedelete-blobcontainer/myblockblob
假设您是使用.Net存储客户端库将blob上传到Blob存储中,通过创建CloudBlockBlob
实例,您可以通过读取blob的Uri
属性来获取blob的URL。
static void BlobUrl() { var account = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true); var cloudBlobClient = account.CreateCloudBlobClient(); var container = cloudBlobClient.GetContainerReference("container-name"); var blob = container.GetBlockBlobReference("image.png"); blob.UploadFromFile("File Path ....");//Upload file.... var blobUrl = blob.Uri.AbsoluteUri; }