与云端硬盘界面的“新建”按钮集成

当用户点击云端硬盘界面的“新建”按钮并在云端硬盘界面中选择某个应用时,云端硬盘会将用户重定向到配置云端硬盘界面集成中定义的该应用的新网址。

然后,应用会在 state 参数中收到一组默认的模板变量。新网址的默认 state 信息为:

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

此输出包括以下值:

  • create:正在执行的操作。当用户点击云端硬盘界面的“新建”按钮时,值为 create
  • FOLDER_ID:父级文件夹的 ID。
  • FOLDER_RESOURCE_KEY:父级文件夹的资源键。
  • USER_ID:用于唯一标识用户的个人资料 ID。

您的应用必须按照以下步骤处理此请求:

  1. 验证 action 字段的值是否为 create
  2. 使用 userId 值为用户创建一个新会话。如需详细了解已登录用户,请参阅用户和新事件
  3. 使用 files.create 方法创建文件资源。如果在请求中设置了 folderId,请将 parents 字段设置为 folderId 值。
  4. 如果请求中设置了 folderResourceKey,请设置 X-Goog-Drive-Resource-Keys 请求标头。如需详细了解资源密钥,请参阅使用资源密钥访问链接共享文件

state 参数采用网址编码形式,因此您的应用必须处理转义字符并将其解析为 JSON。

用户和新活动

云端硬盘应用应将所有“create”事件视为潜在登录。某些用户可能有多个帐号,因此 state 参数中的用户 ID 可能与当前会话不匹配。如果 state 参数中的用户 ID 与当前会话不匹配,请结束应用的当前会话,并以请求的用户的身份登录。