【发布时间】:2021-10-07 08:03:55
【问题描述】:
根据b2_list_file_names documentation“此调用每个事务最多返回1000个文件名”,您可以使用nextFileName字段获取接下来的1000个文件,依此类推。它没有说明这些文件的返回顺序,但 documentation for the similar b2_list_file_versions 表示“按文件名的字母顺序”,因此人们可能会怀疑 b2_list_file_names 的返回顺序相同。
这意味着在调用 b2_list_file_names 之间上传的任何新文件都不会出现在列表的末尾。
是否可以选择 b2_list_file_names 的时间顺序或以任何其他方式获取最新上传的文件?
为了避免出现XY Problem 的情况,这是我真正想做的:
将所有文件的 legal_hold 设置为“on”,并为所有新文件每周执行一次。由于我有大约 40 万个文件,因此每次列出所有文件都需要花钱(我认为)。
因此,解决我的问题的另一种方法是列出所有 legal_hold 未设置为“on”的文件。 这可能吗?
【问题讨论】:
-
原来我没有正确阅读账单信息。列出 400 000 个文件转换为 400 个 C 类操作(假设您为每个请求指定 1000 个文件),并且您每天免费获得 2 500 个 C 类操作。所以对我来说没问题!不过,我会留下这个问题,因为这对其他人来说可能是个问题。
-
嗨@Peter - 你能把你的评论变成一个答案,这样人们就可以更容易地看到解决方案吗?
-
实际上,我认为我的评论并不是对问题的回答,正如我所说的那样(“如何通过 Backblaze B2 API 仅列出新文件”)。评论更像是“我不需要知道答案,因为我现在的文件很少,我可以列出所有文件而不会超出限制”。
-
很公平 - 我会写一个答案来解决您的原始问题。在问之前我不想这样做。
标签: backblaze