当用户点击 Google 云端硬盘界面的“新建”按钮并在 Google 云端硬盘界面中选择某个应用时,Google 云端硬盘会将用户重定向到配置 Google 云端硬盘界面集成中定义的该应用的新网址。
然后,您的应用会在 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。
您的应用必须按照以下步骤处理此请求:
- 验证
action
字段的值是否为create
。 - 使用
userId
值为用户创建新会话。如需详细了解已登录用户,请参阅用户和新事件。 - 使用
files.create
方法创建文件资源。如果在请求中设置了folderId
,请将parents
字段设置为folderId
值。 - 如果在请求中设置了
folderResourceKey
,请设置X-Goog-Drive-Resource-Keys
请求标头。如需详细了解资源键,请参阅使用资源键访问通过链接共享的文件。
state
参数采用网址编码,因此您的应用必须处理转义字符并将其解析为 JSON。
用户和新事件
Google 云端硬盘应用应将所有“创建”事件视为潜在的登录事件。某些用户可能有多个账号,因此 state
参数中的用户 ID 可能与当前会话不匹配。如果 state
参数中的用户 ID 与当前会话不匹配,请结束应用的当前会话,然后以请求的用户的身份登录。