我如何在云图中搜索一个图像,寻找它的 public_id
? 当我上传图片时,会检查它是否已经存在,这样我就不会有重复的图片。
您可以使用 搜索API 或 获取单个资源的详细信息 纵观 管理API.
虽然如此,但 上传API 支持一个名为 overwrite
其中设置为 True
默认情况下,您可以将其设置为 您可以将其设置为 False
中的代码,然后像之前一样执行上传。在响应中,你会得到一个叫做 existing
设为 True
或 False
表示结果。如果现有的是 False
您传递的图片将被上传,因为没有资源存在于该 public_id
. 当 True
响应中包含了您的账户中存在的资源的详细信息,这些资源在这个 public_id
.
如果你想避免重复的图像,而不是仅仅通过 public_id
,然后你可以抓住 ETag
的每一个资源的响应,并将其存储在您的数据库中,与 public_id
. 该 ETag
在API响应中返回的只是文件本身的MD5摘要,所以你可以在本地计算,并与该(或所有)相关记录进行比较。public_id
并决定是否是同一个文件,如果是,则跳过上传,如果上传了新的图片,则覆盖。