PHP 上传到 Azure 存储后获取 Blob url

PHP Getting Blob url after uploaded to Azure storage

在 .NET Azure Storage SDK 中,上传 blob 时,必须创建 blob 引用,上传此 blob 后,会填充一些元数据。

CloudBlockBlob blob = container.GetBlockBlobReference(fileName);

因此,上传文件后,我可以使用

获得 Azure 存储空间 url
blob.Uri.AbsoluteUri

但是对于 PHP,对 createBlockBlob 方法的调用返回一个不包含 blob url.

的 CopyBlobResult 对象

如何获取?

作为模型 CopyBlobResult does not contain the property url of blob. Because the Storage SDK for PHP implements with REST APIS, according https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/Put-Blob?redirectedfrom=MSDN,API 不响应 blob 的 url。

并且在 Storage SDK 存储库中,我们可以找到 Blob model contains the url property and which is used in list blobs

其实blob的url很简单,我们在成功更新到Azure后就可以自己生成了。无需利用 SDK。

Blob 的 url 格式应为:https://<account_name>.blob.core.windows.net/<container_name>/<blob_name>