fix: 回退request.ts
This commit is contained in:
+8
-22
@@ -6,9 +6,6 @@ const DEFAULT_TIMEOUT = 10000;
|
||||
|
||||
const activeControllers = new Set<AbortController>();
|
||||
|
||||
const getResponseErrorMsg = (data: any, fallback = '请求失败') =>
|
||||
data?.data?.msg || data?.msg || data?.message || fallback;
|
||||
|
||||
/** 统一处理 401 未授权逻辑 */
|
||||
const handleUnauthorized = (msg?: string) => {
|
||||
auth.logout();
|
||||
@@ -77,24 +74,20 @@ const request = (
|
||||
activeControllers.delete(controller);
|
||||
|
||||
if (res.status === 401) {
|
||||
const errorData = await res.json().catch(() => ({}));
|
||||
const errorMsg = getResponseErrorMsg(errorData, '登录状态已过期,请重新登录');
|
||||
handleUnauthorized(errorMsg);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
handleUnauthorized();
|
||||
return Promise.reject(new Error('Unauthorized'));
|
||||
}
|
||||
|
||||
if (res.status === 500) {
|
||||
message.error('服务器开小差了,请稍后再试');
|
||||
const errorData = await res.json().catch(() => ({}));
|
||||
const errorMsg = getResponseErrorMsg(errorData, '服务器开小差了,请稍后再试');
|
||||
message.error(errorMsg);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
return Promise.reject(new Error(errorData.message || '服务器内部错误'));
|
||||
}
|
||||
|
||||
if (!res.ok) {
|
||||
const errorData = await res.json().catch(() => ({}));
|
||||
const errorMsg = getResponseErrorMsg(errorData);
|
||||
message.error(errorMsg);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
message.error(errorData.message || '请求失败');
|
||||
return Promise.reject(new Error(errorData.message || '请求失败'));
|
||||
}
|
||||
|
||||
if (options.responseType === 'blob') {
|
||||
@@ -104,15 +97,8 @@ const request = (
|
||||
const data = await res.json();
|
||||
|
||||
if (data.code == 401) {
|
||||
const errorMsg = getResponseErrorMsg(data, '登录状态已过期,请重新登录');
|
||||
handleUnauthorized(errorMsg);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
}
|
||||
|
||||
if (data.code && data.code != '200') {
|
||||
const errorMsg = getResponseErrorMsg(data);
|
||||
message.error(errorMsg);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
handleUnauthorized(data.msg);
|
||||
return Promise.reject(new Error(data.msg || 'Unauthorized'));
|
||||
}
|
||||
|
||||
return data;
|
||||
|
||||
Reference in New Issue
Block a user