如何确保Blob文件名在Azure存储上是唯一的

问题描述

我想确保我放在Azure存储上的文件是唯一的。我幼稚且性能不佳的方法是使用Java UUID生成唯一的id,然后检查是否存在blob,然后写入该文件(如果不存在)或重新生成新的文件名,否则写入。这需要两次往返...有更好的方法吗?有人希望Azure可以做到这一点。 我正在使用azure-storage-blob Java SDK 12.8.0

解决方法

Azure本身没有此功能。

您的解决方案应该是最好的解决方案:使用UUID(因为UUID是全局唯一的,并且只有很少的机会被复制)作为文件名,然后检查它是否存在。

否则,您需要先循环所有blob->并将所有名称存储在本地,例如。将名称存储在列表中;上传新文件时->从列表中本地检查名称,然后确定它是否存在。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...