我正在测试 Google Drive 'Changes' API 并有一些问题。
期望:我在“我的驱动器”下有文件夹树结构,其中包含文件。我想调用 Changes:list API 来检测是否在该特定文件夹 ID 中添加/编辑/删除了项目。
API Explorer 尝试过:https ://developers.google.com/drive/v2/reference/changes/list
问题:
我看不到任何将特定文件夹 ID 传递给此 API 以获取“最大更改 ID”的选项。看起来这个 api 不支持 parm 'q'?可能吗?
作为替代解决方案,考虑存储该文件夹的“modifiedDate”属性并在下次比较时使用它。但是,当该文件夹中的项目更新时,它不会更新。它不应该像在文件夹修改日期在其内容更新时更新的窗口中那样工作吗?
想知道是否可以在文件夹级别检测更改。
谢谢
[编辑]
有效的解决方案:
使用 Files:list 列出所有。选定的字段:items/id,items/modifiedDate,items/parents/id,items/title
获取起始文件夹 ID(例如,使用标题搜索获取“MyRootFolder”)
- 使用递归数组搜索遍历子树结构(链接父母:id 和文件 ID)并获取最大修改日期和文件总数。
- 在应用存储中存储最大修改日期和文件计数。
- 对于后续调用,将新的最大修改日期与存储的进行比较,并将文件总数与存储的进行比较。如果任一不匹配,则“MyRootFolder”中的内容已更新。