实现共享云端硬盘支持

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

首先,当您的应用执行以下操作时,您必须在请求中添加 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 方法查找共享云端硬盘中的用户文件。如需搜索共享云端硬盘,请参阅搜索共享云端硬盘

list 方法包含以下特定于共享云端硬盘的查询参数:

  • driveId:要搜索的共享云端硬盘的 ID。

  • corpora:查询所适用的项目(文件或文档)的正文。 支持的实体包括 userdomaindriveallDrives。为了提高效率,请优先使用 userdrive,而不是 allDrives。默认情况下,语料库设置为 user

  • includeItemsFromAllDrives:是否应在结果中同时包含“我的云端硬盘”和共享云端硬盘中的内容。如果未提供或设置为 false,则不会返回共享云端硬盘内容。

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

以下查询模式是共享云端硬盘特有的:

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

跟踪共享云端硬盘中的更改

使用 changes 资源上的 list 方法来跟踪共享云端硬盘中的更改。如需了解详情,请参阅跟踪用户和共享云端硬盘的更改

list 方法包含以下特定于共享云端硬盘的查询参数:

  • driveId:返回更改的共享云端硬盘。如果指定,则更改 ID 是指共享云端硬盘中项的更改,用于提供文件的当前状态。如需引用特定的共享云端硬盘更改,必须同时使用共享云端硬盘 ID 和更改 ID 作为标识符。

  • includeItemsFromAllDrives:是否应在更改列表中包含共享云端硬盘文件或更改。

  • supportsAllDrives:请求的应用是否支持共享云端硬盘。如果为 false,则不返回共享云端硬盘内容,包括共享云端硬盘和共享云端硬盘中的文件。

以下查询模式是共享云端硬盘特有的:

includeItemsFromAllDrives driveId 查询说明
true 这些更改反映了用户访问过的共享云端硬盘内外的文件更改,以及用户所属的共享云端硬盘的更改。
true 更改反映了指定共享云端硬盘及其内部内容的更改。

如需详细了解更改日志行为,请参阅跟踪用户和共享云端硬盘的更改

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

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

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

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