Skip to content

Commit 115e94a

Browse files
author
Taois
committed
feat: 优化源检测
1 parent a666057 commit 115e94a

File tree

6 files changed

+2008
-1878
lines changed

6 files changed

+2008
-1878
lines changed

apps/source-checker/index.html

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -523,22 +523,36 @@ <h2 style="margin:0 0 12px;font-size:16px">检测结果</h2>
523523
// 2. 如果推荐接口异常,检测一级分类接口
524524
let categorySuccess = false;
525525
if (homeResult.data && homeResult.data.class && homeResult.data.class.length > 0) {
526-
const firstCategory = homeResult.data.class[0];
527-
if (firstCategory.type_id) {
526+
// 尝试检测前两个分类(容错机制)
527+
const categoriesToCheck = homeResult.data.class.slice(0, 2);
528+
529+
for (let i = 0; i < categoriesToCheck.length; i++) {
530+
const category = categoriesToCheck[i];
531+
if (!category.type_id) continue;
532+
528533
const cateResult = await this.testApi(source.api, {
529534
ac: 'list',
530-
t: firstCategory.type_id,
535+
t: category.type_id,
531536
pg: 1,
532537
extend
533538
});
534-
result.details.category = cateResult;
539+
540+
// 记录结果:如果是第一个,直接记录;如果是后续且成功了,也记录覆盖
541+
if (i === 0 || (cateResult.success && this.isValidData(cateResult.data))) {
542+
result.details.category = cateResult;
543+
}
535544

536545
categorySuccess = cateResult.success && this.isValidData(cateResult.data);
537546
if (categorySuccess) {
538547
result.status = 'success';
539-
result.message = '分类接口正常';
540-
this.log(`${source.name}: 分类接口正常`, 'success');
548+
result.message = `分类接口正常${i > 0 ? ' (容错:分类2)' : ''}`;
549+
this.log(`${source.name}: 分类接口正常${i > 0 ? ' (容错:分类2)' : ''}`, 'success');
541550
return;
551+
} else {
552+
// 如果是第一个失败且还有下一个,记录日志
553+
if (i === 0 && categoriesToCheck.length > 1) {
554+
this.log(`${source.name}: 分类1无数据,尝试容错检测分类2...`, 'warning');
555+
}
542556
}
543557
}
544558
}

0 commit comments

Comments
 (0)