共享云端硬盘的组织、共享和所有权模式与“我的云端硬盘”不同。因此,某些“我的云端硬盘”操作不允许用于共享云端硬盘中的内容。
本指南概述了 files 和 changes 资源中特定于共享云端硬盘的 API 差异。
文件资源
只有当文件位于共享云端硬盘中时,才会填充 files 资源中的
以下字段:
hasAugmentedPermissions:是否直接对此文件授予了任何用户文件访问权限。capabilities/canAddFolderFromAnotherDrive:当前用户是否可以将文件夹从其他云端硬盘(不同的共享云端硬盘或“我的云端硬盘”)添加到此文件夹。capabilities/canDeleteChildren:当前用户是否可以删除此文件夹的子项。capabilities/canMoveChildrenOutOfDrive:当前用户是否可以将此文件夹的子项移出共享云端硬盘。capabilities/canMoveChildrenWithinDrive:当前用户是否可以将此文件夹的子项移到共享云端硬盘内。capabilities/canMoveItemWithinDrive:当前用户是否可以将此共享云端硬盘项移到共享云端硬盘内。capabilities/canReadDrive:当前用户是否具有对其所属共享云端硬盘的读取权限。capabilities/canTrashChildren:当前用户是否可以将此文件夹的子项移到回收站。driveId:文件所在的共享云端硬盘的 ID。trashingUser:如果文件已被明确移到回收站,则为将其移到回收站的用户。trashedTime:项被移到回收站的时间。如果您使用的是旧版 Drive API v2,则此字段称为trashedDate。
对于位于共享云端硬盘中的文件,系统不会填充以下字段:
permissions:由于共享云端硬盘访问控制列表 (ACL) 的大小可能很大,因此权限不会作为文件的一部分返回。请使用支持分页的permissions.list方法,列出共享云端硬盘或共享云端硬盘文件夹中的文件的权限。owners、ownerNames、ownedByMe:共享云端硬盘中的文件归共享云端硬盘所有,而不是归单个用户所有。folderColorRgb:文件夹无法单独着色。shared:共享云端硬盘中的所有项都是共享的。writersCanShare:无法在共享云端硬盘中按角色限制共享权限。
只有在用户被授予对某个项的文件访问权限时,才会设置以下字段:
sharedWithMeDatesharingUser
将以下字段与共享云端硬盘搭配使用时,需要特别注意:
parents.isRoot:此字段仅对“我的云端硬盘”根文件夹为 true;对于共享云端硬盘的顶级文件夹,此字段为 false。parents:如果发出请求的用户不是共享云端硬盘的成员,并且无权访问父级,则父级不会显示在父级列表中。此外,除了顶级文件夹之外,如果文件位于共享云端硬盘中,则父级列表必须仅包含一项。capabilities/canRemoveChildren:请使用capabilities/canDeleteChildren或capabilities/canTrashChildren。
更改资源
对于共享云端硬盘,
changes 资源中提供了以下新字段:
changeType:更改类型。可能的值为file和drive。driveId:与此更改关联的共享云端硬盘的 ID。drive:共享云端硬盘的更新状态。如果changeType为drive且用户仍是共享云端硬盘的成员,则此字段会显示。
对于需要将内容与共享云端硬盘同步或记录活动的应用,可能需要进行其他更改。如需了解详情,请参阅跟踪用户 和共享云端硬盘的更改。