跳到主要内容

无密码授权

本指南解释了如何通过您的游戏应用启用玩家授权,让玩家无需手动输入用户 ID 即可无缝访问游戏中心。

Webhook general flow imageWebhook general flow image

先决条件

  • 用于请求身份验证的活动服务器到服务器 (S2S) API 密钥。

步骤 1:在游戏客户端中拦截授权深度链接

当玩家点击登录按钮时,游戏中心将把他们重定向到游戏深度链接。 URL 将类似以下格式:

mygame://authorize-player?nonce={nonce}

这里,{nonce} 是游戏中心为每个授权请求生成的唯一字符串。

游戏客户端必须拦截深度链接并从 URL 中提取 nonce 参数。 此 nonce 将用于对游戏后台的授权请求。

步骤 2:将授权请求转发到游戏后台

在玩家启动授权会话后,游戏客户端应发送授权请求到游戏后台。

步骤 3:将授权请求发送到 Aghanim

收到来自游戏客户端的请求后,游戏后台必须向 Aghanim API 发送一个 POST 请求,使用端点 Authorize User。 在请求中包含以下参数:

参数描述必需吗?
player_id要授权的玩家的唯一标识符。
nonce游戏中心提供的唯一字符串。
redirect_path重定向玩家到的游戏中心页面。

示例请求

curl --request POST \
--url https://api.aghanim.com/s2s/v1/users/authorize \
--header 'Authorization: Bearer YOUR_S2S_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"player_id": "2D2R-OP3C",
"nonce": "N2Q3Y2MGI6bQ"
}'

示例响应

{
"authorization_url": "https://your-game-hub/go/login?token=dXNyX...FTV0xqTWg&nonce=N2Q3Y2MGI6bQ"
}

步骤 4:将玩家重定向到授权 URL

一旦游戏后台收到来自 Aghanim 的 authorization_url,应将此 URL 传回游戏客户端。 游戏客户端应启动默认浏览器并打开授权 URL。 此操作完成了玩家在游戏中心的授权。

需要帮助吗?
联系我们的集成团队 integration@aghanim.com