文档修订记录

版本 更新日期 更新内容
3.0.1 2024.03.12 提供获取微信小游戏、抖音小游戏、华为AccessToken接口

1. 获取AccessToken接口

1.1 说明

目前仅支持获取微信小游戏、抖音小游戏、华为AccessToken,具体接入找平台协助处理

1.2 Api地址

地址: https://api-atm.feiyu.com/v1/accessToken/get

1.3 请求方式

POST

1.4 请求头

"Content-type":"application/json"

1.5 请求参数

请求实例:
{"app_id":xxx,"channel_id":xxx,"sign_type":"md5","sign_nonce":"19219212","sign_version":"1.0","timestamp":"1710151312","sign":"02ecce200347a2afe48125020fb0764b"}

参数名 必选 类型 说明
app_id int 令牌服务应用ID,星云开放平台->对接中心->渠道配置,字段 atm_app_id
channel_id int 令牌服务渠道ID,星云开放平台->对接中心->渠道配置,字段 atm_channel_id
timestamp string 10位时间戳
sign string 签名值,获取AppSecret(星云开放平台->对接中心->渠道配置,字段 atm_app_secret)进行签名
sign_type string 签名类型(默认:md5)
sign_nonce string 签名随机数(随机数字+字符串共8位)
sign_version string 签名版本,默认1.0
1.6 返回参数

返回实例:
{"trace_id":"1b9e1f46d2fa1b06cc52711338e8e406","status":0,"message":"OK","data":{"access_token":"77_cHnYarBmRtmyV1vM_YlkVsddmYBpO8aYWpE6OWyHo4VDDUHyYjPEq9Ik3qrGyLu_NR2QCdPY5jY1L1CeKfw1kY4NvaGpIO1dk0KAP6c6di-xi1qgzm9q7HvlxLYJRVhAAATBF","expires_in":7196}}

通用参数
参数名 类型 说明
trace_id string 请求唯一ID
status int 状态码, 0代表成功,非0状态码可参考如下错误码表格确认信息
message string 返回结果描述
数据参数

(若status=0,则data数据参数会返回对应如下信息)

参数名 类型 说明
access_token string 通讯密钥
expires_in int 过期时间(单位:秒)

2 签名规则

2.1 MD5步骤说明
1 待签名参数 :除去 sign ,其他参数(包含空值的参数)都要参加验签。
2 对所有待签名参数按照字段名的ASCII码从小到大排序。
3 使用键值对的格式(key1=value1&key2=value2)拼接成字符串;进行urlencode编码(PHP使用rawurlencode),获得$source字符串。
4 将步骤3的$source字符与秘钥通过&符号进行拼接:$source&AppSecret。
5 将步骤4的字符串进行md5哈希签名得到最终sign值。

签名样例(PHP版本):


1 秘钥获取AppSecret:星云开放平台->对接中心->渠道配置,字段 atm_app_secret
2 验证案例:
ksort($data);//1 按照健值从小到大排序
$query_string = array();//2 键值对按照'='拼接,排除sign参数
foreach ($data as $key => $val) {
    if ($key == 'sign') continue;
    array_push($query_string, $key . '=' . $val);
}
$query_string = join('&', $query_string);//3 将上述数组按照&拼接
$source = rawurlencode($query_string);//4 将拼接结果用rawurlencode编码
$sign= md5($source.'&'. $app_secret);//md5 hash计算签名