Azure Blob 存储中没有子容器(目录)。我只是在文件名中使用斜杠来创建虚拟子目录。
这是示例。
http://apolyonstorage.blob.core.windows.net/banners/Local/Homepage/index.html
容器名称:横幅
文件名:Local/Homepage/index.html
我上传文件并在 Azure 门户上访问它,但只是访问链接失败,因为告诉资源未找到,但它实际上存在。
为什么我在浏览器上通过链接访问它时失败?
最佳答案
blob 容器上的 ACL 是什么?对于可通过 URL 直接访问的 Blob(或者换句话说,匿名访问),Blob 容器的 ACL 应该是 Blob
或 Public
。
您可以使用下面的示例代码来更改容器的 ACL:
CloudStorageAccount account = new CloudStorageAccount(new StorageCredentials(StorageAccount, StorageAccountKey), true);
CloudBlobClient blobClient = account.CreateCloudBlobClient();
var container = blobClient.GetContainerReference("your-container-name");
BlobContainerPermissions permissions = new BlobContainerPermissions()
{
PublicAccess = BlobContainerPublicAccessType.Blob,//Or BlobContainerPublicAccessType.Container
};
container.SetPermissions(permissions);
关于azure - 无法访问子目录中的blob文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28265149/