目录

常规验证-心跳通信


请求地址

管理后台创建软件后获取例:http://demo.huweidun.cn/ac.php?s=8508c320cacb0634c0e241df2f3345fe

公共提交参数

参数名 示例值 参数说明
sid
00362ace-e994-411a-a9bf-f31f9177b6f3
软件SID,后台添加软件后获得。
uuid d6fadd40-7267-4178-9b35-4c8ff61e0c07 封包安全码,每次必须变动,用于校验数据合法性方案之一。
t 1630766594 客户端10位时间戳。
m1 590b782aa78cc3333c84eaa975ab9dc1 封包token(sid+key+t 拼接后取MD5值)
m2 b1dfd79c7cf0f5df8f77c12352af952c 当前程序MD5值,如果开启校验MD5,则此值必填,可于程序运行时动态读取自身MD5值。
m3 f50ebce838ae4b8e212578dd0bc23d9f moduleMd5,购买授权后获得,如使用dll文件,请传入DLLMD5值,同时在”后台-系统-系统设置”中填写。
mcode b4f43bb8-32dc-4d9a-9094-74e39cd61c37 客户端机器码(自行获取机器码,若机器码变动则会提示转绑[如果开启”绑定机器码”])
clientid 36ebe72d-51d8-4252-b99c-37da152717ac 客户端运行ID,此ID在软件退出之前不可变动,也就是每次启动都生成一个新的clientid,软件退出即作废。
webkey 0241946994e62e289e4622b07154b961 通用秘钥(webKey),购买授权后获得。

公共返回参数

参数名 示例值 参数说明
status
success
success为正常,error为错误。
code 200 200为正常,其它为错误。
msg 账号或密码错误. 错误内容,无错误返回空。
token 324daaf6558361aa8f27d607c72262af 返回封包token(提交封包中的m1+返回封包中t,拼接后取MD5值)
t 1630766888 封包时间戳
uuid d6fadd40-7267-4178-9b35-4c8ff61e0c07 提交封包的UUID,原样返回。
result 请查看不同函数说明 数据主体,Json格式,每个函数返回的数据不同,具体请参照对应函数说明。
result_token 627b0d546ccb1d4896373305d74c6933 数据主体token,将数据以ASCII首字母递增排序,拼接键名与键值,拼接完毕后加上通信秘钥一起取MD5值。

传参说明

  • 只需按规则拼接参数后加密传送即可。

  • 封包内参数分为公共参数和函数参数。

  • 公共参数为所有命令均需要提交的参数。

  • 函数参数根据不同函数说明决定提交哪个参数,对应函数内均有说明。


函数参数

action=heartbeat&user=用户名&auth=

  • userauth 二选一,user优先级大于auth
  • user 用于主进程登录后心跳,
  • auth 为主程序返回的登录令牌,用于其它进程免登录心跳

特别注意:用户名密码登录时,登录token为 <用户名+密码+通信密钥> 取MD5值,三方登录和心跳令牌登录,登录token均为:<用户名+通信密钥> 取MD5值

提交示例

{
    "action": "heartbeat",
    "auth": "",
    "clientid": "85ff78a2-11ef-4a42-9601-f8ea166c872b",
    "key": "GorgBdTnRDYxQGxKC9pYB42O933Pzxx4",
    "m1": "02bacbaff348961e9fa2a4707d642fbf",
    "m2": "d41d8cd98f00b204e9800998ecf8427e",
    "m3": "a0368bba05140b66e8172247da2650ab",
    "mcode": "de11dbe0-aff6-d5ff-0e38-76e51d30ee21",
    "sid": "c1162b61-fa71-4214-b66b-014ae6b0a99a",
    "t": "1630818002",
    "user": "user6",
    "uuid": "54d27c11-8a18-4202-8395-d0151e97e709",
    "webkey": "943e508419c4cd486ab894d3f7dbee50"
}

心跳成功返回

{
    "status": "success",
    "code": "200",
    "uuid": "54d27c11-8a18-4202-8395-d0151e97e709",
    "result": {
        "balance": "632.16",
        "bind": "15756",
        "clientId": "85ff78a2-11ef-4a42-9601-f8ea166c872b",
        "endtime": "2030-07-06 04:48:23",
        "loginToken": "d151d156aad7f2701aee09a7c2b058d9",
        "para": "{\"type\":\"\u666e\u901a\u7248\"}",
        "password": "user6",
        "point": "3",
        "softpara": "{\"url\":\"https:\/\/www.huweidun.cn\",\"url1\":\"https:\/\/www.baidu.com\"}",
        "user": "user6"
    },
    "msg": "",
    "token": "6a16b74c0933725819499c7cd2c7c666",
    "t": 1630818001,
    "result_token": "812d69b9c959ff9db9707c2629bb690d"
}

数据主体解析(result)

balance 账户余额。
bind 绑定数据,例如游戏号。
clientId 客户端唯一ID,同公共参数中的clientid
endtime 到期时间。
point 点数余额。
loginToken 登录Token,用于校验是否为合法登录(用户名+密码+通信秘钥key,取其MD5值)。
para 用户自定义常量,用户充值时由充值卡写入,可以用于校验用户级别,以限制不同功能。
softpara 软件自定义常量,后台对应软件中设置,用户成功登录即返回,可用于数据分离,存放云常量。
user 登录用户名。
password 登录密码。

心跳异常示例

心跳异常并不代表通信失败,例如用户到期、账号被封停、账号被顶下线等,均属异常。可根据返回状态码进行后续操作,一般情况下,只要心跳异常,应立即终止程序运行。

{
    "status": "error",
    "code": "231",
    "uuid": "fdef2351-d4e5-453f-967b-8bf9a73bce7c",
    "result": null,
    "msg": "\u8f6f\u4ef6\u8d26\u6237\u5df2\u88ab\u5c01\u505c,\u5373\u5c06\u4e0b\u7ebf.",
    "token": "b5811835b2b4d1e9ddf717b30807ab12",
    "t": 1630820061,
    "result_token": null
}

错误码

错误码 错误消息
263 登录令牌错误.
234 您的账户已离线,即将关闭.
212 软件维护中,具体提示后台对应软件内设置
209 当前机器码与绑定机器不符.
228 通行证已删除,即将下线.
229 通行证已被封停,即将下线.
230 软件账户已被删除,即将下线.
231 软件账户已被封停,即将下线.
232 您的点数为0,即将下线.
233 您的账户已到期,即将下线.