主题
Skip to content
WARNING
💡 模块名:GameHelper.ServerConfig
描述
远程服务器配置模块,拉取远程项目配置数据,并做好记录与修改。此外,远程项目 AB 测试的信息,买量用户,也是通过这个来判断。
接口索引
属性
| 属性 | 类型 | 描述 |
|---|---|---|
| config | object | 后端返回的项目配置信息 |
| abTest | string | AB 测试 |
| userIsBought | boolean | 判断买量用户 |
| serverTime | number | 服务器时间 |
方法
获取在线参数,并通过本次调用传入的回调返回结果。接口本身无返回值(void)。
typescript
function getServCfg(opt: {
reacquire?: boolean;
success: (res: any) => void;
fail?: (err: any) => void;
complete?: (res: any) => void;
}): void;reacquire表示是否强制重新拉取参数,若不填,或者false,当存在上一次拉取的数据时,会直接使用上一次的拉取数据。否则,重新拉取一次。
| 参数 | 类型 | 默认值 | 是否必填 | 说明 |
|---|---|---|---|---|
| opt | GetServParams | object | 是 | http 请求参数 |
GetServParams
| 参数 | 类型 | 默认值 | 是否必填 | 说明 |
|---|---|---|---|---|
| reacquire | boolean | false | 否 | 是否重新拉取数据。不传或传 false 时,可直接使用已有配置。 |
| success | (res) => void | / | 是 | 有可用配置时执行,通过 res.cfg 按 key 读取在线参数 |
| fail | (err) => void | / | 否 | 拉取后仍无可用配置时执行,参数为错误信息 |
| complete | (res) => void | / | 否 | 在 success 或 fail 后执行;不保证带参数,建议用于结束加载状态 |
返回值
无
在线参数回调说明
在 SDK 初始化后调用 GameHelper.ServerConfig.getServCfg。每次传入的回调只处理本次获取结果,不会持续订阅后续配置刷新;再次获取时需重新调用接口。
- 已有可用配置且不要求重新拉取时,
success可能在调用过程中立即执行,请提前准备好业务状态。 - 配置正在拉取时,本次调用会等待正在进行的请求完成;即使传入
reacquire: true,也不会额外并发发起一次请求。 success表示有可用配置,可能来自已有缓存。本次网络请求失败但仍有缓存时,也可能进入success;不能据此判断本次联网拉取成功。fail用于没有可用配置的情况,游戏应使用默认配置。complete在成功或失败后执行,不要在其中读取配置或依赖回调参数。
在 success(res) 中通过 res.cfg["参数Key"] 获取值。配置可用不代表包含所需的 key,应处理缺失值;用户分层等配置也按对应 key 读取。
示例
typescript
GameHelper.ServerConfig.getServCfg({
reacquire: false, // 需要重新拉取时传 true
success(res) {
const value = res.cfg["参数Key"];
if (value === undefined || value === null || value === "") {
// 未配置该 key,使用游戏默认值
return;
}
// 在此解析 value 并更新游戏配置
console.log("在线参数:", value);
},
fail(err) {
// 没有可用配置,使用游戏默认值
console.log("获取远程配置失败", err);
},
complete() {
// 在此结束加载状态,不依赖回调参数
},
});点我快速对接



›
‹