GetLatestVersion 获取最新版本
程序信息类查询入口:返回该程序的最新版本信息(版本号、版本名、版本状态、更新说明、下载地址)。客户端可用它在启动时检测更新。
| 项目 | 值 |
|---|---|
| action | GetLatestVersion |
| 入口 | Handle POST https://www.a7p.cn/api/verify/{ApiPassword} |
| 是否计入验证统计 | 否 |
调用步骤
- 完成 Init 握手,拿到
ApiPassword。 - 拼接明文:
action=GetLatestVersion(无需任何业务参数)。 - RC4 加密 + MD5 签名,POST 到 Handle 接口。
code == 200→ 读取data中的版本信息。
请求参数
本接口不需要业务参数,明文只需 action:
text
action=GetLatestVersion业务规则
- 返回值全部来自后台「产品版本」配置,缺省时会有兜底默认值(
version默认1.0,version_status默认beta,下载地址为空字符串)。 version_status常见取值:beta(测试版)、stable(正式版)、expired(套餐过期)。
请求示例
python
# 复用 /api/handle 页面中的 handle() 与 rc4() 函数
API_PW = "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
result = handle(API_PW, "action=GetLatestVersion")
if result["code"] == 200:
d = result["data"]
print(f"最新版本 {d['version']}({d['version_name']})状态={d['version_status']}")
print(f"下载地址: {d['download_url']}")
print(f"更新说明: {d['version_data']}")
else:
print(f"查询失败 {result['code']}: {result['message']}")text
.版本 2
.子程序 A7_获取最新版本, 逻辑型
.参数 ApiPassword, 文本型
.局部变量 TimeStamp, 文本型
.局部变量 加密参数, 文本型
.局部变量 Sign, 文本型
.局部变量 返回文本, 文本型
.局部变量 状态码, 文本型
TimeStamp = 到文本 (时间_取现行时间戳 ())
加密参数 = RC4加密 (ApiPassword, "action=GetLatestVersion")
Sign = 取数据摘要 (到字节集 (ApiPassword + TimeStamp + 加密参数))
返回文本 = 到文本 (网页_访问 ("https://www.a7p.cn/api/verify/" + ApiPassword, 1, "TimeStamp=" + TimeStamp + "&Sign=" + Sign + "&Data=" + 加密参数))
状态码 = JSON_解析 (返回文本, "code")
.判断开始 (状态码 = "200")
信息框 ("最新版本:" + JSON_解析 (返回文本, "data.version") + #换行符 + "下载:" + JSON_解析 (返回文本, "data.download_url"), 0, )
.默认
信息框 ("查询失败:" + JSON_解析 (返回文本, "message"), 0, )
.判断结束
返回 (假)成功响应
json
{
"code": 200,
"message": "success",
"data": {
"version": "2.3.1",
"version_name": "正式版",
"version_status": "stable",
"version_data": "修复若干已知问题,优化启动速度",
"download_url": "https://down.a7p.cn/app_v2.3.1.exe"
}
}| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 版本号(如 2.3.1) |
version_name | string | 版本名(如 正式版) |
version_status | string | 版本状态:stable / beta / expired |
version_data | string | 更新说明(changelog 文本) |
download_url | string | 下载地址,未配置时为空字符串 |
错误码
该接口本身不校验业务参数,失败通常由握手层错误引起(如 1001 程序不存在、1010 签名错误、1012 程序未审核通过)。完整列表见错误码对照表。