是否有针对多个文件的Google云端硬盘评论的单一API端点?

问题描述 投票:0回答:1

我正在构建一个小应用程序,除其他外,它会显示所有评论的时间顺序和对其工作Google云端硬盘帐户上的文件的回复。我稍后会构建一些自定义过滤器,例如,用户只能看到他们被提及的评论和回复。

现在,要获取该数据,需要一个Google Drive API端点来获取list of Drive files for a given user,例如:GET https://www.googleapis.com/drive/v3/files?orderBy=modifiedTime%20desc&pageSize=20&fields=*

还有一个Google Drive API端点来获取a list of comments on a given file。示例:GET https://www.googleapis.com/drive/v3/files/fileId/comments。每条评论都有一个replies属性,其中包含对该评论的一系列回复。

现在我正在做的是:

  • 获取用户最近的20个Google云端硬盘文件(第一个端点)
  • 对于20个Drive文件中的每一个,获取该文件的注释列表(第二个端点),将其转储到commentsAndReplies数组中。
  • 对于每个(通常为30-40 +总注释),运行forEach以获取每条注释的所有回复,将每个回复转储到commentsAndReplies数组中。

对于像我这样的简单用例,这似乎有点过分了。我查看了文档,我找不到更好的用例 - 例如,我认为埋藏在Google云端硬盘中的单个文件元数据可能是comments属性所以我只需要进行一次获取调用 - 但是没有这样的运气。

是否有一些Google Drive端点我缺少更高效,或者其他一些方式我可以提高效率?我将尝试在重新加载时加入一些diff-type检查,所以我不必每次用户重新加载时都会发出所有这些API请求(我使用map和Promise.all合并了一些批处理以限制我的API请求但是我我偶尔会得到403 API速率限制错误,但我觉得我可能会遗漏一些东西。

javascript google-drive-sdk
1个回答
1
投票

是否有针对多个文件的Google云端硬盘评论的单一API端点?

不,那里没有。大多数Google驱动器都是基于文件的,因为所有交互都必须包含您希望查看数据的文件。

例如file.comments

https://www.googleapis.com/drive/v3/files/**fileId**/comments

要查看文件的注释,您必须向API发送您希望查看注释的文件。

© www.soinside.com 2019 - 2024. All rights reserved.