Appearance
统一心跳验证 POST
只传 statecode,服务端自动识别是单码卡密心跳、用户账号心跳还是QQ登录心跳并做对应处理。适合 SDK 侧不想为不同登录方式维护多个心跳接口的场景。
请求方法:
POSTContent-Type:application/x-www-form-urlencoded
💡 SDK 快速接入
官方 SDK 已支持此接口,您可以直接使用 SDK 一键调用,无需手动处理加密和签名。
SDK 调用示例
python
# 拿到登录时返回的 statecode 后, 定期心跳
result = verify.heartbeat_any(statecode)
if result['success']:
print("心跳成功")javascript
const result = await verify.heartbeatAny(statecode);
if (result.success) console.log('心跳成功');java
T3Verify.T3Result result = verify.heartbeatAny(statecode);
if (result.success) System.out.println("心跳成功");csharp
var result = verify.HeartbeatAny(statecode);
if (result.Success) Console.WriteLine("心跳成功");php
$result = $verify->heartbeatAny($statecode);
if ($result['success']) echo "心跳成功\n";识别逻辑
- 先反查
t3data_heart(单码心跳表),命中即视为单码卡密心跳,更新对应卡密的line_time。 - 否则反查
t3data_hearts(用户/QQ 心跳表),命中即更新对应账号的line_time。 - 都没命中返回"登录状态不存在"。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
statecode | string | 必填 | 登录状态码(32 位,登录接口下发) |
t | number | 条件必填 | 秒级 Unix 时间戳 |
s | string | 条件必填 | 请求签名 |
safe_code | string | 可选 | 数据验证码 |
成功响应
jsonc
{
"code": "200",
"msg": "心跳验证成功"
}txt
心跳验证成功错误列表
业务错误
| 错误消息 | 原因 |
|---|---|
状态码不可为空 | 未传 statecode |
状态码不存在 | statecode 长度不是 32 位 |
登录状态不存在 | 服务器找不到匹配的 statecode(单码 + 用户/QQ 两张表都没有) |
登录状态失效 | 已被其它设备顶号 |
通用错误
| 错误消息 | 原因 |
|---|---|
程序未开启 / 接口未开启 | 程序或接口未启用 |
时间戳参数不可为空 | 开启时间戳验证但未传 t |
验证数据已失效,请重试 | 时间戳校验失败 |
签名参数不可为空 | 开启签名验证但未传 s |
签名有误 | 签名校验失败 |