公共提交参数,每个命令都需要提交以下公共参数
请求地址:管理后台-软件列表中获取对应软件API地址
请求类型:post
提交参数:data=URL编码后密文&sign=sign
参数名 | 参数说明 |
---|---|
sid | 软件SID,后台添加软件后获得 |
uuid | 通用唯一识别码,每次必须变动,用于校验数据合法性方案之一. |
t | 客户端10位时间戳 |
m1 | 临时封包token(sid+key+t 拼接后取MD5值) |
m2 | 当前程序MD5值,如果开启校验MD5,则此值必填,可于程序运行时动态读取自身MD5值. |
m3 | moduleMd5,购买授权后获得,如使用dll文件,请传入DLLMD5值,同时在"后台-系统-系统设置"中填写. |
mcode | 客户端机器码(自行获取机器码,若机器码变动则会提示转绑[如果开启"绑定机器码"]) |
clientid | 客户端运行ID,此ID在软件退出之前不可变动,也就是每次启动都生成一个新的clientid,软件退出即作废. |
webkey | 通用秘钥(webKey),购买授权后获得. |
公共返回参数,每个命令都按如下格式返回
参数名 | 参数说明 |
---|---|
status | success为正常 error为错误 |
code | 200为正常,其它为错误,请参照错误码表 |
msg | 错误内容明文,请参照错误码表 |
token | 返回封包token(提交封包中的m1+返回封包中t,拼接后取MD5值) |
t | 封包时间 |
uuid | 提交封包的UUID |
result | 数据主体,每个函数返回的数据不同,具体请参照对应函数说明. |
result_token | 数据主体token,将数据以ASCII首字母递增排序,拼接键名与键值,拼接完毕后加上通信秘钥一起取MD5值. |
函数参数:action=login&user=用户名&pwd=密码&code=验证码
提交完整明文:
{
"action": "login",
"user": "huweidun",
"pwd": "abc123",
"code": "h9p7",
"sid": "d6fadd40-7267-4178-9b35-4c8ff61e0c07",
"key": "9d8af871e74f5629639544a314adab96",
"uuid": "e0661d57-9a41-4d86-7b63-4b30f4e2b02b",
"t": "1581838573",
"m1": "4797c749f3c5d33e9b177d1a47ae26df",
"m2": "d41d8cd98f00b204e9800998ecf8427e",
"m3": "a0368bba05140b66e8172247da2650ab",
"mcode": "F1E5FD6B-FC18-49EE-A3E5-5C51C5DE1224",
"webkey": "2a829dd8bce3c480b714c737259760f9",
"clientid": "ed9e6519-a51a-46d9-92d5-6f9d9b2b5719"
}
返回完整明文:
{
"status": "success",
"code": "200",
"uuid": "e0661d57-9a41-4d86-7b63-4b30f4e2b02b",
"result": {
"bind": "我是自定义绑定数据",
"endtime": "2020-02-27 15:34:58",
"para": "我是用户自定义常量",
"point": "0",
"softpara": "我是软件自定义常量",
"user": "quecongsoft"
},
"msg": "",
"token": "dff6a63d7badc9be675d6e5e589614f0",
"t": 1581838566,
"result_token": "ce7963b0a313198cf325330556c3bf16"
}
返回数据解析:
result.bind : 用户绑定资料,例如游戏号等
result.endtime : 到期时间
result.point : 点数余额
result.user : 用户名
result.para : 用户自定义常量,注意,此常量是充值卡中的"用户自定义常量",用户充值时自动写入.只有用户未到期(计时模式)或有点数(计点模式)才会返回.
result.softpara : 软件自定义常量,无论用户是否到期,只要登录成功就会返回,那么到期了怎么还能登录成功?就要看后台是否开启"允许到期登录"的按需收费功能.