Appearance
用户心跳验证 POST
用户登录后定期调用,维持在线状态。超时未调用将被视为离线。
请求方法:
POSTContent-Type:application/x-www-form-urlencoded
💡 SDK 快速接入
官方 SDK 已支持此接口,您可以直接使用 SDK 一键调用,无需手动处理加密和签名。
SDK 调用示例
python
result = verify.user_heartbeat('username', 'password', user_statecode)
if result['success']:
print("心跳验证成功")javascript
const result = await verify.userHeartbeat('username', 'password', statecode);
if (result.success) console.log('心跳验证成功');java
T3Verify.T3Result result = verify.userHeartbeat("username", "password", statecode);
if (result.success) System.out.println("心跳验证成功");csharp
var result = verify.UserHeartbeat("username", "password", statecode);
if (result.Success) Console.WriteLine("心跳验证成功");php
$result = $verify->userHeartbeat('username', 'password', $statecode);
if ($result['success']) echo "心跳验证成功\n";调用时机
登录成功后,按「登录状态码有效期」内定期调用。建议间隔为有效期的 1/2 ~ 2/3。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
statecode | string | 必填 | 登录时返回的 statecode 值(32 位字符串) |
t | number | 条件必填 | 秒级 Unix 时间戳 |
s | string | 条件必填 | 请求签名 |
safe_code | string | 可选 | 数据验证码 |
成功响应
jsonc
{
"code": "200", // 状态码
"msg": "在线", // 结果消息
"time": 1741700000, // 服务器时间戳
"date": "202603111200" // 服务器日期分钟
}txt
在线
当前时间:202603111200
当前时间戳:1741700000错误列表
心跳错误
| 错误消息 | 原因 |
|---|---|
状态码不可为空 | 未传 statecode |
状态码不存在 | statecode 长度不是 32 位 |
登录状态不存在 | statecode 在心跳记录中不存在 |
登录状态失效 | 登录状态被标记失效(可能被挤下线) |
登录状态已过期 | 超过有效期未调用心跳 |
用户使用时间已到期 | 用户已过期 |
用户被禁用 | 用户被后台禁用 |
通用错误
| 错误消息 | 原因 |
|---|---|
程序未开启 / 接口未开启 | 程序或接口未启用 |
时间戳参数不可为空 | 开启时间戳验证但未传 t |
验证数据已失效,请重试 | 时间戳校验失败(排障指南) |
签名参数不可为空 | 开启签名验证但未传 s |
签名有误 | 签名校验失败 |