管理后台创建软件后获取
例: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=deductpoint&user=扣点账号&num=扣除点数&msg=扣点备注&interval=0
{
"action": "deductpoint",
"clientid": "fd3c15de-ef05-461b-72bf-edb342ab118c",
"interval": "0",
"key": "GorgBdTnRDYxQGxKC9pYB42O933Pzxx4",
"m1": "00f8812c19778ad923d043ba03069016",
"m2": "d41d8cd98f00b204e9800998ecf8427e",
"m3": "a0368bba05140b66e8172247da2650ab",
"mcode": "de11dbe0-aff6-d5ff-0e38-76e51d30ee21",
"msg": "测试扣点5点.",
"num": "5",
"sid": "c1162b61-fa71-4214-b66b-014ae6b0a99a",
"t": "1630822224",
"user": "user6",
"uuid": "318cadca-e153-4104-7e15-9a5c137fc933",
"webkey": "943e508419c4cd486ab894d3f7dbee50"
}
{
"status": "success",
"code": "200",
"uuid": "318cadca-e153-4104-7e15-9a5c137fc933",
"result": {
"point": "495"
},
"msg": "",
"token": "62662eb5a798ca738b274191f13c3e5b",
"t": 1630822223,
"result_token": "0b66a18dc90a9f23429aded114fef037"
}
point
点数余额。
一般失败原因为账户点数余额不足,具体请参照返回状态码。
{
"status": "error",
"code": "225",
"uuid": "c73684e4-fa74-4b87-8391-fa0c00e564d8",
"result": null,
"msg": "\u70b9\u6570\u4e0d\u8db3,\u6263\u70b9\u5931\u8d251.",
"token": "08b5663c923cfd71efc2c2a845f94d2d",
"t": 1630822360,
"result_token": null
}
如果未开启记录扣点日志
则remarks和interval参数无效。每次调用该函数,均扣点。
如果已开启记录扣点日志
,则只有相同的数量和备注,才会校验interval。
扣点示例(已开启记录扣点日志
)下方演示了多项目穿插扣点。
扣点时间 | 扣除点数 | 扣点备注 | 扣点间隔 | 实际是否扣点 | 原因说明 |
---|---|---|---|---|---|
2020年9月25日12:00:00 | 5 | 日功能费用 | 86400 | 是 | 限制86400秒内不重复扣点,本次为首次扣点,所以会扣除 |
2020年9月25日14:00:00 | 5 | 日功能费用 | 86400 | 否 | 相同的点数与备注,且扣点间隔未超过86400秒,所以不会扣除 |
2020年9月25日16:00:00 | 5 | 日功能费用 | 86400 | 否 | 相同的点数与备注,且扣点间隔未超过86400秒,所以不会扣除 |
2020年9月25日17:00:00 | 1 | 日功能附加费用 | 86400 | 是 | 拥有不同的点数与备注,是新功能扣点,所以会扣除 |
2020年9月25日18:00:00 | 5 | 日功能费用 | 86400 | 否 | 相同的点数与备注,且扣点间隔未超过86400秒,所以不会扣除 |
2020年9月25日19:00:00 | 1 | 日功能附加费用 | 86400 | 否 | 相同的点数与备注,且扣点间隔未超过86400秒,所以不会扣除 |
2020年9月26日12:00:01 | 5 | 日功能费用 | 86400 | 是 | 虽然拥有相同的点数与备注,但间隔已超过86400秒,所以会扣除 |
2020年9月26日17:00:01 | 1 | 日功能附加费用 | 86400 | 是 | 虽然拥有相同的点数与备注,但间隔已超过86400秒,所以会扣除 |
记录扣点日志
用户群体有查看扣点明细的需求下,开启记录扣点日志后,用户可以在用户中心
查看历史扣点记录,消费更加清晰。
互斥体
扣点函数中的扣除点数
与扣点备注
为检测重复扣点的互斥体,如果两项均相同,则校验是否在扣点间隔内,在间隔内,说明没到扣点时间,不扣点
,如已超过间隔,则扣点
。常应用于不需要重复扣点的场景,例如24小时内使用某功能,不重复扣点,那么间隔就是86400秒。
例子前提:微博养号软件,三个功能,1.注册账号(扣5点),2.登录账号(每号24小时内扣2点),发文(扣2点)。
hwd_deductPoint(5,"注册扣点",0);
这里无需校验扣点间隔,执行一次扣5点。hwd_deductPoint(2,"登录扣点[操作的账号]",86400);
首次执行扣2点,24小时内同账号重复登陆,不重复扣点。hwd_deductPoint(2,"发文扣点",0);
这里无需校验扣点间隔,执行一次扣2点。登录扣点[操作的账号]
这里有个可变因素操作的账号
,使用此方法可以保证每个操作的账号为独立的互斥体。错误码 | 错误消息 |
---|---|
224 | 扣点账户不存在. |
226 | 扣点失败,未知原因,请联系客服. |
225 | 点数不足,扣点失败. |