sud.getBalance
查询游戏币余额与收支累计。
参数
Object object
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| env | number | 0 | 否 | 0 正式环境,1 测试环境 |
| success | function | 否 | 查询成功回调 | |
| fail | function | 否 | 查询失败回调 | |
| complete | function | 否 | 接口结束回调,成功或失败均执行 |
回调参数
success
| 属性 | 类型 | 说明 |
|---|---|---|
| balance | number | 游戏币总余额,包含付费币和免费币 |
| presentBalance | number | 当前赠送游戏币余额 |
| sumSave | number | 累计充值游戏币总数 |
| sumPresent | number | 累计赠送游戏币总数 |
| sumBalance | number | 累计获得游戏币总数 |
| sumCost | number | 累计消耗游戏币总数 |
付费币余额为 balance - presentBalance,接口不单独返回该值,需自行计算。
fail
| 属性 | 类型 | 说明 |
|---|---|---|
| errCode | number | 错误码 |
| errMsg | string | 错误信息 |
complete 不携带参数,在 success 或 fail 之后调用,单次请求只执行一次。
注意事项
env必须与下单时signData里的env一致,否则会查到另一个环境的余额。- 订单到账与读到最新余额是两件事。 服务端确认发货后,余额可能存在短暂延迟,查询失败时应重试而不是直接判定到账失败。
- 余额展示应以本接口的返回为准刷新 UI,不要把客户端本地增减的结果当作余额。
示例代码
javascript
sud.getBalance({
env: 0,
success: (res) => {
const paidBalance = res.balance - res.presentBalance;
console.log('总余额', res.balance);
console.log('付费币', paidBalance);
console.log('赠送币', res.presentBalance);
console.log('累计充值', res.sumSave, '累计消耗', res.sumCost);
},
fail: (err) => {
console.error('查询余额失败', err.errCode, err.errMsg);
},
complete: () => {
console.log('查询余额调用结束');
},
});