获取登录信息
概述
OpenAPI 采用统一的 Mac Token 头部签算来传递用户身份。
接入客户端 SDK 后,经过用户的授权流程,会获得这个用户在当前应用中的 Mac Token。Mac Token 长期有效,只有在用户更新自己账号相关安全信息、注销对当前应用的授权时才会失效。开发者应当将 Mac Token 妥善保管于自己的服务器上,作为后续与 TapTap 服务端通讯的标示。(Mac Token 算法细节见文档中的 MAC Token 算法 部分)
以下接口,均提供为国内示例,海外用户请参考海外 API 说明。
流程
-
移动端用 SDK 的 TapTap 登录,可以通过
GetAccessToken
获取 AccessToken,里面包含public String kid;
public String access_token;
public String token_type;
public String mac_key;
public String mac_algorithm;
public String expire_in;
private String json = null; -
再把移动端获取的参数发到游戏务服务器,服务端签算 mac token。
-
请求
https://tds-tapsdk.cn.tapapis.com/api/v1/user/info
, header 携带 mac token
注意:当前实际返回的 kid 和 access_token 值相等,建议使用 access_token
API
获取当前账户详细信息
GET https://tds-tapsdk.cn.tapapis.com/api/v1/user/info?client_id=xxx
Authorization mac token
请求参数
字段 | 类型 | 说明 |
---|---|---|
client_id | string | 该应用的 Client ID ,应与约定相同 |
响应参数
字段 | 类型 | 说明 |
---|---|---|
user_id | string | tds id,用户唯一标识 |
name | string | 用户名 |
avatar | string | 用户头像图片 |
gender | int | UNKNOWN = 0; MALE = 1; FEMALE = 2 |
is_guest | bool | 是否是游客,暂时弃用 |
请求示例
替换其中的 MAC id
和 Client ID
为自己签算的 mac token 和控制台的 Client ID
curl -s -H 'Authorization:MAC id="1/hC0vtMo7ke0Hkd-iI8-zcAwy7vKds9si93l7qBmNFxJkylWEOYEzGqa7k_9iw_bb3vizf-3CHc6U8hs-5a74bMFzkkz7qC2HdifBEHsW9wxOBn4OsF9vz4Cc6CWijkomnOHdwt8Km6TywOX5cxyQv0fnQQ9fEHbptkIJa
gCd33eBXg76grKmKsIR-YUZd1oVHu0aZ6BR7tpYYsCLl-LM6ilf8LZpahxQ28n2c-y33d-20YRY5NW1SnR7BorFbd00ZP97N9kwDncoM1GvSZ7n90_0ZWj4a12x1rfAWLuKEimw1oMGl574L0wE5mGoshPa-CYASaQmBDo3Q69XbjTs
KQ",ts="1618221750",nonce="adssd",mac="XWTPmq6A6LzgK8BbNDwj+kE4gzs="' "https://tds-tapsdk.cn.tapapis.com/api/v1/user/info?client_id=<Client ID>"