兑换码核销接口
基本信息
接口描述: 用于验证兑换码的有效性并获取兑换内容。
接口地址: https://api.chinadlrs.com/developer/redeem.php
请求方式: POST
响应格式: JSON
需要开放授权登录
对于全局兑换码(所有用户可以共同核销的兑换码),必须提供有效的 access_token (或老版本登录接口的 user_token)
对于单次兑换码(仅单用户使用一次的兑换码),不需要验证登录信息
请求参数
请求头 (Headers)
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Content-Type | string | 是 | 必须设置为 application/json |
查询参数 (Query Parameters)
| 参数名 | 类型 | 必填 | 描述 | 默认值 |
|---|---|---|---|---|
| lang | string | 否 | 响应语言(zh/en) | zh |
查询参数
查询参数通过在接口地址后直接拼接的方式传递,地址和参数之间用 ? 分隔,多个参数之间用 & 连接。
例如响应语言为英文的接口地址为:
https://api.chinadlrs.com/developer/redeem.php?lang=en
请求体 (Body)
| 参数名 | 类型 | 必填 | 描述 | 示例 |
|---|---|---|---|---|
| appid | int | 是 | 应用唯一标识符 | 123 |
| string | 条件必填 | 用户邮箱地址 | "user@example.com" | |
| user_token | string | 条件必填 | 老版本用户令牌 | "KzJkpEDPLCWKN/Xb8gNZ/g==" |
| access_token | string | 条件必填 | 新版本访问令牌 | "P5h7hs9+TzQXdkMFbcOLMUD87vzz..." |
| redeem_code | string | 是 | 兑换码 | "ABC123" |
参数说明
- 全局兑换码(所有用户可以共同核销的兑换码):
email和user_token/access_token参数必须提供 - 单次兑换码(仅单用户使用一次的兑换码):
email和user_token/access_token参数为非必填项 - 对于全局兑换码,
user_token和access_token参数必须二选一,不能同时提供也不能都不提供
数据加密
user_token 和 access_token 参数是经过加密的字符串,用于验证应用权限和保护数据安全
请求示例
全局兑换码示例(需要验证登录状态)
{
"appid": 123,
"email": "user@example.com",
"user_token": "encrypted_token",
"redeem_code": "ABC123"
}
单次兑换码示例(无需验证登录状态)
{
"appid": 123,
"redeem_code": "ABC123"
}
响应参数
响应参数表
| 参数名 | 类型 | 描述 | 示例 |
|---|---|---|---|
| code | number | 状态码 | 200 |
| data | object | 兑换码内容对象 | |
| data.content | string | 兑换码内容 | "加密后的兑换码内容" |
| msg | string | 响应消息 | "操作成功" |
数据加密
为了防止兑换内容被恶意篡改,data.content 响应参数做了加密处理,客户端需使用 AppToken 解密后再解析兑换内容
成功响应示例
{
"code": 200,
"data": {
"content": "加密后的兑换码内容"
},
"msg": "操作成功"
}
英文成功响应示例
{
"code": 200,
"data": {
"content": "兑换码内容"
},
"msg": "Operation successful"
}
错误响应示例
{
"code": 400,
"data": null,
"msg": "兑换码无效"
}
状态码说明
| 状态码 | 描述 | 解决方案 |
|---|---|---|
| 200 | 兑换码核销成功 | |
| 400 | 参数缺失或无效 | 检查请求参数是否完整且格式正确 |
| 400 | 兑换码无效 | 检查兑换码是否正确 |
| 400 | 兑换码已被使用 | 更换新的兑换码 |
| 400 | 兑换码类型无效 | 联系系统管理员确认兑换码类型 |
| 401 | 未授权 | 检查登录信息是否正确 |
| 401 | 登录已失效 | 重新登录获取新的token |
| 500 | 服务器内部错误 | 联系系统管理员 |