如何判断文件是否已上传到 Filestack (Java)

How to tell if a file has already been uploaded to Filestack (Java)

我有一个简单的命令行工具,可以从远程位置获取预览图像并在每次 运行 秒时上传到 Filestack,即使图像已在之前 运行 秒上传。有没有一种标准方法可以在尝试上传之前检查文件是否已存在于 Filestack 中?

我正在考虑的选项:

一个选项是对潜在的 Filestack 文件 URL 发出 HTTP HEAD 请求,但据我所知,这只有在我拥有来自先前 运行 的 Filestack 图像 handle/key 时才有可能。

另一种选择是:

  1. 每次上传新图像时,将预览图像 ID <> Filestack handle/key 存储在可序列化映射中
  2. 运行 完成后序列化地图
  3. 下一个开始运行反序列化地图所以我有一个想法被上传了。

我只想知道除了我正在考虑的选项之外是否有更好的或 Filestack(标准)方法来执行此操作。

做了一些研究,似乎 Filestack 没有办法检查文件是否已上传,除非文件 handle/key 如我之前所述已知。所以我选择了第二种方法,即在本地存储 resourceId 和文件 URL 的 key/value 映射,然后使用对象序列化和反序列化技术来保存状态,并且效果很好。这是步骤

  1. 每次上传新图像时将 resourceId <> Filestack handle/key 添加到可序列化映射中
  2. 当前 运行 完成后序列化地图
  3. 在下一个开头运行反序列化地图所以你知道已经上传了。