使用资源密钥访问链接共享的云端硬盘文件

您可以使用 Drive 界面或通过 Google Drive API 与他人共享 Google 云端硬盘文件和文件夹。通过云端硬盘共享文件时,您可以控制用户是能够编辑文件或评论文件,还是只能打开文件。

资源密钥有助于保护文件免遭意外访问。资源密钥是传递的附加参数,可让用户访问通过链接共享的某些文件。之前未查看过该文件的用户必须提供资源密钥才能获得访问权限。最近查看过该文件或拥有直接访问权限的用户不需要使用资源密钥即可访问该文件。

通过链接共享的云端硬盘文件只能由以下用户发现:因 type=usertype=group permissions 资源而有权访问该文件的用户。如果用户仅有权访问通过链接共享的文件,且使用的是 type=domaintype=anyone 权限,则可能需要资源密钥。

如需详细了解权限,请参阅共享文件、文件夹和云端硬盘。如需查看角色和每种角色允许的操作的完整列表,请参阅角色和权限

从文件中读取资源密钥

Drive API 会在 files 资源的只读 resourceKey 字段中返回文件的资源密钥。

如果文件是云端硬盘快捷方式,则只读 shortcutDetails.targetResourceKey 字段中会返回快捷方式目标的资源键。

返回网址的 files 资源中的字段(例如 exportLinkswebContentLinkwebViewLink)也包含 resourceKey。与云端硬盘界面集成的客户端也可以在 state 参数中使用 resourceKeys。如需了解详情,请参阅下载和导出文件

在请求中设置资源键

对 Drive API 的请求所引用的任何文件的资源密钥都设置在 X-Goog-Drive-Resource-Keys HTTP 标头上。

对 Drive API 的请求可以使用 X-Goog-Drive-Resource-Keys HTTP 标头指定一个或多个资源键。

语法

文件 ID 和资源键对通过正斜线 (/) 分隔符设置在标头中。通过使用英文逗号 (,) 分隔符组合所有文件 ID 和资源键对来构建标头。

例如,假设有一项请求是将文件 fileId1 从文件夹 fileId2 移动到文件夹 fileId3。假设这三个文件的资源键分别为 resourceKey1resourceKey2resourceKey3。使用正斜杠和英文逗号分隔符根据这些值构建的标头如下所示:

    X-Goog-Drive-Resource-Keys: fileId1/resourceKey1,fileId2/resourceKey2,fileId3/resourceKey3