Azure blob存储中没有子容器(目录)。我只是在文件名中使用斜杠来获得虚拟子目录。
这是一个例子。
http://apolyonstorage.blob.core.windows.net/banners/Local/Homepage/index.html
容器名称:横幅
文件名:Local / Homepage / index.html
我上传文件并在Azure门户网站上访问它,但只是通过告知资源未找到但实际上存在来访问链接失败。
为什么我在浏览器上通过链接访问它时会失败?
答案 0 :(得分:2)
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);