【问题标题】:Is there a single API endpoint for Google Drive comments across multiple files?跨多个文件的 Google Drive 评论是否有一个 API 端点?
【发布时间】:2019-08-17 13:35:50
【问题描述】:

我正在构建一个小应用程序,除其他外,它会显示所有 cmets 的按时间顺序供稿,并回复他们工作的 Google Drive 帐户上的文件。稍后我将构建一些自定义过滤器,例如,用户可以只看到他们被@提及的 cmets 和回复。

现在,要获取该数据,有一个 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=*

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

我现在正在做的是:

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

对于像我这样的简单用例来说,这似乎有点过分。我查看了文档,找不到更适合我的用例的东西 - 例如,我认为隐藏在 Google Drive 中的单个文件元数据可能是 comments 属性,所以我只需要进行一次 fetch 调用 -但没有这样的运气。

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

【问题讨论】:

    标签: javascript google-drive-api


    【解决方案1】:

    对于跨多个文件的 Google Drive cmets 是否有一个 API 端点?

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

    例如文件.cmets

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 2017-08-28
      相关资源
      最近更新 更多