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

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

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

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

此输出包括以下值:

  • create:正在执行的操作。当用户点击 Drive 界面的“新建”按钮时,此值为 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 与当前会话不匹配,请结束应用的当前会话,然后以请求的用户身份登录。