共享云端硬盘的组织、共享和所有权模式与“我的云端硬盘”不同。因此,共享云端硬盘中的内容不允许执行某些“我的云端硬盘”操作。本文档简要介绍了与共享云端硬盘相关的 API 差异。
文件资源
File
资源中的以下字段仅针对位于共享云端硬盘中的文件进行填充:
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
:无法按角色限制共享云端硬盘中的共享权限。
仅当用户已获得对某项内容的文件访问权限时,系统才会设置以下字段:
sharedWithMeDate
sharingUser
将以下字段与共享云端硬盘搭配使用时,需要特别注意:
parents.isRoot
:此字段仅对“我的云端硬盘”根文件夹为 true;对于共享云端硬盘顶级文件夹,此字段为 false。parents
:如果请求用户不是共享云端硬盘的成员,并且无权访问家长,则家长不会显示在家长列表中。此外,如果文件位于共享云端硬盘中,则除了顶级文件夹之外,父级列表必须只包含一项。capabilities/canRemoveChildren
:使用capabilities/canDeleteChildren
或capabilities/canTrashChildren
。
权限资源
Permission
资源中的 permissionDetails
字段仅会为位于共享云端硬盘中的文件填充。此字段是一个列表,其中包含相应共享云端硬盘文件具有或继承的精简权限。此字段是仅输出字段,仅适用于共享云端硬盘中的内容。此外,
- 我们定义了两个新角色:
organizer
和fileOrganizer
。 permissions.list()
方法支持分页。
更改资源
共享云端硬盘的 Change
资源中新增了以下字段:
changeType
:变更类型。可能的值包括file
和drive
。driveId
:与相应更改关联的共享云端硬盘的 ID。drive
:共享云盘的更新状态。如果changeType
为drive
且用户仍是共享云端硬盘的成员,则会显示此字段。
对于需要与共享云端硬盘同步内容或跟踪活动的应用,可能还需要进行其他更改。如需了解详情,请参阅跟踪用户和共享云端硬盘的更改。