hookehuyr

fix(AdPage): 优化广告配置和家庭状态检查的错误处理逻辑

改进页面初始化流程,将并行请求改为串行处理,并添加错误处理和重试机制。当广告配置首次失败时,会在家庭状态检查成功后自动重试,而家庭状态检查失败则会抛出错误终止流程。
......@@ -237,11 +237,32 @@ const initializePage = async () => {
// 执行静默授权
await performSilentAuth();
// 并行获取广告配置和检查家庭状态
await Promise.all([
fetchAdConfig(),
checkUserFamily()
]);
// 先获取广告配置
let adConfigSuccess = false;
try {
await fetchAdConfig();
adConfigSuccess = true;
} catch (adError) {
console.error('获取广告配置失败,但继续执行后续逻辑:', adError);
}
// 无论广告配置是否成功,都要检查家庭状态
try {
await checkUserFamily();
// 如果家庭状态检查成功,但广告配置失败了,再次尝试获取广告配置
if (!adConfigSuccess) {
try {
await fetchAdConfig();
console.log('重试获取广告配置成功');
} catch (retryError) {
console.error('重试获取广告配置仍然失败:', retryError);
}
}
} catch (familyError) {
console.error('检查家庭状态失败:', familyError);
throw familyError; // 家庭状态检查失败需要抛出错误
}
} catch (error) {
console.error('页面初始化失败:', error);
// 初始化失败时也要处理超时
......