【问题标题】:How to tell if a file has already been uploaded to Filestack (Java)如何判断文件是否已上传到 Filestack (Java)
【发布时间】:2019-03-22 11:38:20
【问题描述】:

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

我正在考虑的选项:

一种选择是向潜在的 Filestack 文件 URL 发出 HTTP HEAD 请求,但 AFAIK 只有在我拥有上一次运行的 Filestack 图像句柄/密钥时才有可能。

另一种选择是:

  1. 每次上传新图像时,将预览图像 id 文件堆栈句柄/键存储在可序列化的映射中
  2. 运行完成后序列化地图
  3. 在下一次运行开始时反序列化地图,以便我知道已上传。

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

【问题讨论】:

  • 在本地存储 ID 并在上传之前检查本地
  • @hovanessyan 是的,这就是为什么我将序列化/反序列化列为我正在考虑的选项。我要确认的是,是否有标准或更好的方法。
  • 如果您调用的服务提供“isExisting by ID”功能或类似的标准方式。如果该服务不提供,您将不得不在本地存储。如果您使用序列化,请考虑使用 protobuf 或 Thrift 而不是默认的 Java 序列化。

标签: java image-upload filestack


【解决方案1】:

做了一些研究,似乎使用 Filestack 没有办法检查文件是否已上传,除非文件句柄/密钥如前所述。所以我选择了第二种方法,即在本地存储 resourceId 和文件 URL 的键/值映射,然后使用对象序列化和反序列化技术来保存状态,它工作得很好。这是步骤

  1. 每次上传新图片时,添加 resourceId Filestack 句柄/键到可序列化的映射中
  2. 当前运行完成后序列化地图
  3. 在下一次运行开始时反序列化地图,以便您了解已经上传的地图。

【讨论】:

    猜你喜欢
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2011-10-12
    • 1970-01-01
    • 2015-11-15
    • 2010-10-03
    相关资源
    最近更新 更多