【问题标题】:Google Drive API List files based on Owners in Shared Drive基于共享驱动器中所有者的 Google Drive API 列表文件
【发布时间】:2020-07-29 05:01:08
【问题描述】:

我正在构建一个网络项目,允许用户过滤和列出共享 Google 云端硬盘上的文件。使用 Google Drive API v3 和 Javascript,我希望能够根据文件的所有者或原始创建者过滤所述文件。为了显示所有以“John Doe”为所有者/创建者的文件,但是此查询不起作用。

"John Doe" in owners

list 方法如下所示

window.gapi.client.drive.files.list({
   'fields': 'nextPageToken, files(*)',
   'corpora': 'drive', 
   'includeItemsFromAllDrives': true,
   'supportsAllDrives': true,
   'driveId': 'XXX',
   'q': '"John Doe" in owners'
})

此查询返回零个文件。有没有办法在共享驱动器上使用 Google Drive API 根据所有者或创建者或 lastModifyingUser 列出文件?

【问题讨论】:

    标签: javascript google-drive-api


    【解决方案1】:
    • 所有者中的“John Doe”有效,但它只会找到“John Doe”和您都有权访问的文件

    • 根据文件所在的位置,您可能需要指定 'corpora': 'allDrives''supportsAllDrives'=true 以获取结果。

    【讨论】:

    • - 在我的测试过程中,我确实可以访问 John Doe 的文件,但是 "John Doe" in owners 仍然返回 0 个结果 - 如果我设置 'corpora': 'allDrives', 'supportsAllDrives'=true 我必须删除 driveId 这会将搜索字段缩小到特定的共享文件夹。在这种情况下,使用"johndoe@email.com" in owners 将返回他的文件,但不是他拥有的共享文件夹中的所有文件。
    • 如果你得到一些结果,这意味着"johndoe@email.com" in owners 有效。如果您不检索所有文件,则必须与共享设置/存储文件的驱动器有关。您能否在结果中获得的文件与未获得的文件之间的位置和访问权限之间建立关联?
    猜你喜欢
    • 2021-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    相关资源
    最近更新 更多