2
0

fix:修改错误提示

This commit is contained in:
zhongzm
2025-01-10 19:07:31 +08:00
parent b12d8fb218
commit 434767a902
3 changed files with 25 additions and 19 deletions

View File

@@ -48,6 +48,11 @@ function createCommonRequest<ResponseData = any>(
instance.interceptors.response.use(
async response => {
// 对仪表盘接口做特殊处理
if (response.config.url?.includes('/u/account/dashboard')) {
return Promise.resolve(response);
}
if (opts.isBackendSuccess(response)) {
return Promise.resolve(response);
}
@@ -57,6 +62,11 @@ function createCommonRequest<ResponseData = any>(
return fail;
}
// 如果响应中包含数据但没有明确的错误信息,也视为成功
if (response.data && !response.data.error) {
return Promise.resolve(response);
}
const backendError = new AxiosError<ResponseData>(
'the backend request error',
BACKEND_ERROR_CODE,
@@ -71,7 +81,6 @@ function createCommonRequest<ResponseData = any>(
},
async (error: AxiosError<ResponseData>) => {
await opts.onError(error);
return Promise.reject(error);
}
);

19
src/typings/api.d.ts vendored
View File

@@ -446,20 +446,15 @@ declare namespace Api {
* Backend api module: "dashboard"
*/
namespace Dashboard {
/** Dashboard gauge data */
/** Gauge data */
interface GaugeData {
/** Balance amount */
balance: number;
/** Total traffic amount (bytes) */
traffic: number;
/** Used traffic amount (bytes) */
trafficUsed: number;
/** Current traffic rate (B/s) */
activity: number;
/** Peak traffic rate (B/s) */
peakTrafficRate: number;
/** Number of connected devices */
balance: string | number;
clientNum: number;
traffic: number;
trafficUsed: number;
trafficEnable: boolean;
activity: number;
error?: any; // 添加可选的 error 属性
}
}

View File

@@ -279,8 +279,8 @@ function checkAndTriggerAuth(dashboardData: any) {
async function mockDataUpdate() {
try {
const response = await authStore.getDashboardData();
// 检查响应是否有效
if (response && typeof response === 'object') {
// 检查响应是否有效且不是错误响应
if (response && typeof response === 'object' && !response.error) {
// 检查必要的字段是否存在
if (response.balance !== undefined) {
// 更新余额和设备数据
@@ -365,14 +365,16 @@ async function mockDataUpdate() {
});
updateGauge3(opts => updateGaugeData(opts, baseData.value[2]));
} else {
// 静默处理无效数据
console.warn('Invalid dashboard data structure:', response);
}
} else {
// 静默处理无效响应
console.warn('Invalid response:', response);
}
} catch (error) {
// 只记录真正的错误
if (error instanceof Error) {
console.warn('Dashboard data update failed:', error.message);
}
// 静默处理所有错误
console.warn('Dashboard update failed:', error);
}
}