【发布时间】:2017-06-24 06:31:02
【问题描述】:
我有等级制度
my container
--images
--img01
--img02
我想发出一个休息请求并得到结果:<BlobPrefix>images</BlobPrefix>
如链接https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/enumerating-blob-resources“分隔的 Blob 列表”部分下所示
但是,我没有得到这个结果,而是将所有资源名称作为递归调用。好像我没有提供任何分隔符。
要签名的字符串是:
GET /account/mycontainer
x-ms-date:Tue, 07 Feb 2017 05:38:21 GMT
x-ms-version:2016-05-31
comp:list
delimeter:/
maxresults:4
restype:container
我要发送的网址:
http://account.blob.core.windows.net/mycontainer?restype=container&comp=list&delimeter=/&maxresults=4
结果我得到:
<xml>
<blobs>
<blob><Name>images/img01</Name>
<blob><Name>images/img02</Name>
</blobs>
</xml>
但是基于上述链接。响应应该是:
<xml>
<blobs>
<BlobPrefix>
<Name>images/</Name>
</BlobPrefix >
</xml>
【问题讨论】:
-
返回的响应是正确的。在 blob 存储的情况下,这些文件夹只是合乎逻辑的。存储帐户 > 容器 > blob 是存储 blob 的结构。由 \ 分隔会产生一个类似于逻辑分隔的文件夹,但它都是 blob 的一部分。单独的 blob uri 是独一无二的。
标签: rest azure azure-storage azure-blob-storage