如何在 Azure 的 blob 存储中列出 blob,而无需递归提取所有 blob



为了参考,这里有一些适用的代码:

const service = storage.createBlobService(connectionString);
service.listBlobsSegemented(containerName, null, (err, data) => {
if (err) {
throw new Error();
}
data.entries.forEach(blob => {
console.log('blob', blob)
})
})

问题是data.entries包含容器中的每个单个blob。我的集装箱结构看起来像这样:

  • 文件-1.csv
  • 文件-2.csv
  • 归档/文件-1-123412123412.csv
  • 存档/文件-2-123412123412.csv

我只能使用listBlobsSegmentedWithPrefix轻松地在/archive中获取内容,例如:

service.listBlobsSegmentedWithPrefix(containerName, 'archive', null, 
(err, data) => {
...
}
)

然而,我看不出只在根级别获得斑点的方法。

我不知所措,所以我只是随机尝试将分隔符设置为"/",结果成功了。遗憾的是,文档没有完全描述它的用途。。。

解决方案:

service.listBlobsSegmented(containerName, null, {delmiter: '/'}, (e, d) => {
....
})

相关内容

  • 没有找到相关文章

最新更新