Appearance
用户余额增加接口
用于实现用户虚拟货币余额增加功能,支持GET和POST两种请求方式。参数需根据后台是否启用“令牌校验”灵活选择:启用则仅传token,无需传user和pass;未启用则需传user和pass,num(增加数量)为必填项,应用签名直接从后台获取。
请求地址 GET / POST
http
https://nobase.cn/api/user/money_add请求参数
| 参数名 | 位置 | 类型 | 必选 | 说明 |
|---|---|---|---|---|
| appid | query | string | ✅ 是 | 应用ID,填写从开发者中心获取的应用唯一标识 |
| num | query | string | ✅ 是 | 增加的虚拟货币数量,必须为正整数(如“10”“100”),不可为负数、小数或非数字格式 |
| signature | query | string | ✅ 是 | 应用签名,直接从后台复制获取,无需手动生成 |
| token | query | string | ❌ 否 | 用户令牌,仅在后台启用“令牌校验”时需传递;启用后无需再传user和pass |
| user | query | string | 条件必选 | 用户账号,仅在未启用“令牌校验”时需填写(如手机号、用户名),格式为纯数字 |
| pass | query | string | 条件必选 | 用户密码,仅在未启用“令牌校验”时需填写,格式为字母数字组合(不可含中文) |
返回示例
成功响应(余额增加成功)
json
{
"code": 200,
"msg": "success",
"data": "操作成功"
}失败响应(参数错误)
json
{
"code": 204,
"msg": "fail",
"data": "接口参数错误"
}失败响应(数量格式错误)
json
{
"code": 405,
"msg": "校验失败",
"data": "增加数量必须为正整数"
}失败响应(账号/令牌异常)
json
{
"code": 404,
"msg": "fail",
"data": "用户账号密码错误!"
}失败响应(令牌无效)
json
{
"code": 404,
"msg": "fail",
"data": "用户令牌无效,请重新登录"
}返回数据结构
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | number | 状态码:200=增加成功,204=参数错误,404=账号/令牌异常,405=数量格式错误 |
| msg | string | 状态描述:success=成功,fail=失败,校验失败=格式/规则未通过 |
| data | string | 响应数据:返回操作结果提示或错误原因,如“操作成功”“增加数量必须为正整数” |
代码示例
javascript
// 1. 配置参数(启用令牌校验:传token,无需user和pass)
const appid = "your_app_id"; // 替换为实际应用ID
const num = "50"; // 替换为需增加的虚拟货币数量(正整数)
const signature = "signature_from_backend"; // 替换为后台获取的应用签名
const token = "valid_user_token"; // 替换为登录获取的有效令牌
// 2. 构造POST参数
const params = new URLSearchParams({
appid,
num,
signature,
token
});
// 3. 发起POST请求
fetch("https://nobase.cn/api/user/money_add", {
method: "POST",
body: params,
headers: {
"Content-Type": "application/x-www-form-urlencoded"
}
})
.then(response => response.json())
.then(res => {
res.code === 200
? console.log("余额增加成功:", res.data)
: console.error("余额增加失败:", res.data);
})
.catch(error => console.error("请求异常:", error));javascript
// 1. 配置参数(未启用令牌校验:传user和pass,无需token)
const appid = "your_app_id";
const num = "100";
const signature = "signature_from_backend";
const user = "13800138000"; // 替换为用户注册账号(纯数字)
const pass = "UserPass123"; // 替换为用户密码(字母数字组合)
// 2. 拼接GET参数
const params = new URLSearchParams({ appid, num, signature, user, pass });
const requestUrl = `https://nobase.cn/api/user/money_add?${params.toString()}`;
// 3. 发起GET请求
fetch(requestUrl)
.then(response => response.json())
.then(res => {
res.code === 200
? console.log("余额增加成功:", res.data)
: console.error("余额增加失败:", res.data);
})
.catch(error => console.error("请求异常:", error));python
import requests
# 1. 配置参数(启用令牌校验)
params = {
"appid": "your_app_id",
"num": "30",
"signature": "signature_from_backend",
"token": "valid_user_token"
}
# 2. 发起POST请求
url = "https://nobase.cn/api/user/money_add"
try:
res_data = requests.post(url, data=params, timeout=5).json()
print(f"结果:{res_data['data']}")
except requests.exceptions.RequestException as e:
print(f"请求异常:{str(e)}")python
import requests
# 1. 配置参数(未启用令牌校验)
params = {
"appid": "your_app_id",
"num": "80",
"signature": "signature_from_backend",
"user": "13900139000",
"pass": "UserPass456"
}
# 2. 发起GET请求
url = "https://nobase.cn/api/user/money_add"
try:
res_data = requests.get(url, params=params, timeout=5).json()
print(f"结果:{res_data['data']}")
except requests.exceptions.RequestException as e:
print(f"请求异常:{str(e)}")注意事项
- 参数选择规则:后台启用“令牌校验”后,仅需传递
appid、token、num、signature;未启用时,需传递appid、user、pass、num、signature,不可同时传递token和user/pass。 - num参数校验:
num必须为正整数,建议前端提前通过正则(如/^[1-9]\d*$/)或类型判断做格式校验,避免因参数错误导致接口调用失败。 - 签名与令牌有效性:
signature需与后台一致,确保无字符缺失或多余空格;启用令牌校验时,token需为未过期的有效令牌,过期后需引导用户重新登录。 - 安全提示:未启用令牌校验时,
pass以明文传递,生产环境需强制使用HTTPS协议;优先推荐启用令牌校验,减少敏感信息暴露风险。 - 业务前置校验:若需避免“无效增加”(如增加数量超过上限),可提前调用“用户信息接口”获取当前余额及规则,前端做二次校验后再发起请求。

