实现共享云端硬盘支持

共享云端硬盘遵循“我的云端硬盘”中的不同组织、共享和所有权模式。如果您的应用要在共享云端硬盘上创建和管理文件,您必须在应用中实现共享云端硬盘支持。实现的复杂性取决于应用的功能。

首先,当应用执行下列操作时,您需要在请求中添加 supportsAllDrives=true 查询参数:

Drive API v3

  • files.get
  • files.list
  • files.create
  • files.update
  • files.copy
  • files.delete
  • changes.list
  • changes.getStartPageToken
  • permissions.list
  • permissions.get
  • permissions.create
  • permissions.update
  • permissions.delete

Drive API v2

  • files.get
  • files.list
  • files.insert
  • files.update
  • files.patch
  • files.copy
  • files.trash
  • files.untrash
  • files.delete
  • files.touch
  • children.insert
  • parents.insert
  • changes.list
  • changes.getStartPageToken
  • changes.get
  • permissions.list
  • permissions.get
  • permissions.insert
  • permissions.update
  • permissions.patch
  • permissions.delete

supportsAllDrives=true 参数会告知 Google 云端硬盘您的应用旨在处理共享云端硬盘中的文件。

读取或修改权限、跟踪更改或需要跨多个语料库进行搜索的应用需要额外的共享云端硬盘功能。本文档的其余部分重点介绍执行这些任务所需的其他更改。

搜索共享云端硬盘中的内容

使用 files.list 方法搜索共享云端硬盘。本部分介绍了 files.list 方法中的共享云端硬盘专用字段。如需搜索共享云端硬盘,请参阅搜索文件和文件夹

files.list 方法包含以下共享云端硬盘专用字段和查询模式:

  • driveId - 要搜索的共享云端硬盘的 ID。
  • includeItemsFromAllDrives - 结果中是否应包含共享云端硬盘内容。如果此字段不存在或设为 false,系统将不会返回共享云端硬盘内容。

  • corpora - 应用查询的项目(文件/文档)正文。支持的正文为 userdomaindriveallDrives。优先使用 userdrive,而不是 allDrives,这样可以提高效率。

  • supportsAllDrives - 发出请求的应用是否同时支持“我的云端硬盘”和共享云端硬盘。如果为 false,则共享云端硬盘内容不会包含在响应中。

以下查询模式仅适用于共享云端硬盘:

includeItemsFromAllDrives corpora 查询说明
true user 查询用户访问过的文件,包括共享云端硬盘和“我的云端硬盘”中的文件。
true drive 查询指定共享云端硬盘中的所有内容。必须在请求中指定 driveId。
true allDrives 查询用户访问过的文件以及用户所属的所有共享云端硬盘。请注意,响应可能包含 incompleteSearch : true,这表示系统没有针对此请求搜索某些语料库。
true domain 查询与网域共享的文件,包括共享云端硬盘和“我的云端硬盘”中的文件。

跟踪共享云端硬盘的更改

使用 changes.list 方法跟踪共享云端硬盘的更改。本部分介绍了 changes.list 方法中的共享云端硬盘专用字段。如需了解详情,请参阅跟踪用户和共享云端硬盘的更改changes.list 方法包含以下共享云端硬盘专用字段和查询模式:

  • driveId - 用于返回更改的共享云端硬盘。如果指定,则更改 ID 是指对共享云端硬盘中的更改,而不是对向用户显示的文件的更改。如需引用特定的共享云端硬盘更改,必须将共享云端硬盘 ID 和更改 ID 用作标识符。
  • supportsAllDrives - 发出请求的应用是否支持共享云端硬盘。如果为 false,则系统不会返回共享云端硬盘内容,包括共享云端硬盘和共享云端硬盘中的文件。
  • includeItemsFromAllDrives - 是否应将共享云端硬盘文件或更改包含在更改列表中。

以下查询模式仅适用于共享云端硬盘:

includeItemsFromAllDrives driveId 查询说明
true 所作更改不仅会反映用户访问过的共享云端硬盘内部或外部文件的变化,还会反映用户所属共享云端硬盘的更改。
true 更改会反映指定的特定共享云端硬盘及其中内容所做的更改。

如需详细了解变更日志行为,请参阅变更日志

在云端硬盘界面中启用共享云端硬盘支持

如需使用云端硬盘界面访问共享云端硬盘内容,请确保您已在 Google API 控制台中勾选“共享云端硬盘支持”。如需了解详情,请参阅配置云端硬盘界面集成

将文件选择器与共享云端硬盘搭配使用

文件选择器支持选择共享云端硬盘中的内容。 如需详细了解如何在文件选择器中启用共享云端硬盘支持和添加共享云端硬盘视图,请参阅 Google Picker API

后续步骤

如需有关创建共享云端硬盘和管理共享云端硬盘权限的帮助,请继续参阅管理共享云端硬盘