我正在编写一个程序,将图像上传到Azure blob存储并将其存储在文件夹中。图像在上传之前存储在图像阵列中。
现在我希望能够检索图像文件夹并将其存储回图像数组中。
我是否需要在本地创建一个blobContainer,其中包含我要下载的文件夹名称,然后下载它?
或者我可以逐个下载图片。
//Creating the Container
let blockBlob = blobContainer.blockBlobReference(fromName: "folderName")
blockBlob.properties.contentType = "image/png"
//Download the container
blockBlob.download(to: imageArray, completionHandler: {(NSError) -> Void in })
对于如何做到这一点,这是正确的想法吗?
答案 0 :(得分:2)
目前,我们无法根据Azure Blob REST API使用一个API / SDK操作下载整个容器/文件夹。
所以你的第二个假设是正确的 - 将你的图像逐个循环下载到本地流/文件。
您可以在DownloadBlob流程中再添加一个ListBlobs步骤。
<强>更新强>
使用容器中的方法directoryReferenceFromName
获取您的文件夹(即目录)。
然后使用listBlobsSegmentedWithContinuationToken
列出并下载目录中的blob。并且count
方法也可用。