Skip to content
页面梗概

助力生态可持续发展

赞助 Fresns 发展

成为赞助者

请求标头

Headers 参数

参数名类型是否必传说明
platformIdNumberYES平台编号,与密钥匹配,参见 platforms
versionStringYES语义化版本号
appIdStringYESApp ID
timestampStringYES签名生成时间(当前 Unix 时间戳,精确到秒或毫秒都支持)
signStringYES请求签名
langTagStringNO语言标签(留空则输出默认语言)
timezoneStringNOUTC 时区(留空则使用默认时区)
aidStringYES/NO账号参数(留空则视为未登录账号)
uidNumberYES/NO用户参数(留空则视为未登录用户)
tokenStringYES/NO身份凭证(传参 aiduid 时必传)
deviceInfoStringYES交互设备信息 session_logs > device_info
压缩 Object 信息为字符串传参

运行模式介绍

  • 配置表键名 site_mode
    • 公开模式,键值为 public
    • 私有模式,键值为 private
  • 获取方法 /api/v2/global/configs?keys=site_mode

签名生成规则

php
// headers 中参与签名的参数
const SIGN_PARAM_ARR = [
    'platformId',
    'version',
    'appId',
    'timestamp',
    'aid',
    'uid',
    'token'
];
  • PHP 可引用封装方法 App\Helpers\SignHelper::makeSign($signMap, $appSecret)
  • 其他客户端请参考下方流程:

1、提取参与签名的 headers 参数

json
// 未登录
{
	"platformId": 1,
    "version": "2.0.0",
    "appId": "TDh15qYay3x0sARo",
    "timestamp": 1656653400000,
}

// 已登录账号
{
	"platformId": 1,
    "version": "2.0.0",
    "appId": "TDh15qYay3x0sARo",
    "timestamp": 1656653400000,
    "aid": "wIfu6jaF",
    "token": "uoX1hk6SHUgB2MFGJwNx38dem9DA7Vsz"
}

// 已登录用户
{
	"platformId": 1,
    "version": "2.0.0",
    "appId": "TDh15qYay3x0sARo",
    "timestamp": 1656653400000,
    "aid": "wIfu6jaF",
    "uid": 782622,
    "token": "uoX1hk6SHUgB2MFGJwNx38dem9DA7Vsz"
}

2、以参数名按照 ASCII 码从小到大排序(字典序)

json
{
    "aid": "wIfu6jaF",
    "appId": "TDh15qYay3x0sARo",
	"platformId": 1,
    "timestamp": 1656653400000,
    "token": "uoX1hk6SHUgB2MFGJwNx38dem9DA7Vsz",
    "uid": 782622,
    "version": "2.0.0",
}

3、对排序后的新参数使用 URL 键值对的格式拼接成字符串。

aid=wIfu6jaF&appId=TDh15qYay3x0sARo&platformId=1&timestamp=1656653400000&token=uoX1hk6SHUgB2MFGJwNx38dem9DA7Vsz&uid=782622&version=2.0.0

4、再拼接上 &key={app_secret} 得到待签名字符串。

aid=wIfu6jaF&appId=TDh15qYay3x0sARo&platformId=1&timestamp=1656653400000&token=uoX1hk6SHUgB2MFGJwNx38dem9DA7Vsz&uid=782622&version=2.0.0&key=qUiEaDNQh2IpvGHOKlTMx7ujn8t1CZWX

5、对签名字符串进行 MD5 运算(32 位小写),得到签名值

3443b2e74710a1293e4250c930e18c8f