feat: implement account email mismatch error handling and improve user feedback in authentication flows

This commit is contained in:
Junyan Qin
2026-01-01 17:01:32 +08:00
parent 61f08f3218
commit 02e12cc1e4
10 changed files with 60 additions and 19 deletions

View File

@@ -93,9 +93,7 @@ export abstract class BaseHttpClient {
// 统一错误处理
if (error.response) {
const { status, data } = error.response;
// Backend uses 'msg' field, also check 'message' for compatibility
const errMessage =
(data as { msg?: string })?.msg || data?.message || error.message;
const errMsg = (data as { msg?: string })?.msg || error.message;
switch (status) {
case 401:
@@ -107,23 +105,23 @@ export abstract class BaseHttpClient {
}
break;
case 403:
console.error('Permission denied:', errMessage);
console.error('Permission denied:', errMsg);
break;
case 500:
console.error('Server error:', errMessage);
console.error('Server error:', errMsg);
break;
}
return Promise.reject({
code: data?.code || status,
message: errMessage,
msg: errMsg,
data: data?.data || null,
});
}
return Promise.reject({
code: -1,
message: error.message || 'Network Error',
msg: error.message || 'Network Error',
data: null,
});
},