Web 应用程序可以创建一个 Google 驱动器文件夹,它如何列出其中没有创建的文件?

Web app can create a Google Drive Folder, how can it list files inside that it didn't create?

我正在努力成为一个好公民并使用 drive.file 范围,但我遇到了一些障碍并且不完全确定如何解决它们。

概览:

  1. 用户登录到我的应用程序,该应用程序使用 drive.file 范围
  2. 我的应用程序在用户的云端硬盘中创建一个新文件夹,然后在该文件夹中创建一个文件
  3. 用户通过 Drive 界面自行将新文件添加到该文件夹​​
  4. 我的应用程序搜索该文件夹,只找到它创建的文件

如何让我的网络应用程序读取它创建的文件夹内的所有文件,而不仅仅是它自己创建的文件?

我假设答案在 Permissions API 中,也许我会创建一个新的权限,但文档似乎对 API 客户没有意义。它会是 "user" 类型的权限吗?如果是这样,我必须提供一个电子邮件地址参数,但是客户端应该使用什么电子邮件地址?它会是 "domain" 类型的权限吗?我会使用什么域?我只是在搜索错误的文件,某些选项会将其他文件公开给我的应用程序吗?

提前致谢!

documentation指定drive.file只给出Per-file access to files created or opened by the app

如果您看到所有其他可能范围的描述,您会发现不幸的是,没有这样的范围可以让您访问特定文件夹中的所有文件,但不能访问用户驱动器上的任何其他文件夹。

因此,作用域在这里帮不了你。

如果您只想访问特定文件夹中的文件,则需要实施解决方法。

例如,您可以将 WebApp 部署为 "You" 并要求用户与您共享感兴趣的文件夹。然后,WebApp 将只能访问相应的文件夹。