diff --git a/apps/web-antd/src/api/request.ts b/apps/web-antd/src/api/request.ts index 515cb70d..3b8b382b 100644 --- a/apps/web-antd/src/api/request.ts +++ b/apps/web-antd/src/api/request.ts @@ -225,7 +225,7 @@ function createRequestClient(baseURL: string) { case 401: { // 已经在登出过程中 不再执行 if (isLogoutProcessing) { - return; + throw new Error(timeoutMsg); } isLogoutProcessing = true; const _msg = $t('http.loginTimeout'); @@ -235,7 +235,7 @@ function createRequestClient(baseURL: string) { isLogoutProcessing = false; }); // 不再执行下面逻辑 - return; + throw new Error(_msg); } default: { if (msg) { diff --git a/apps/web-antd/src/utils/dict.ts b/apps/web-antd/src/utils/dict.ts index 03dbde6d..dd73ef85 100644 --- a/apps/web-antd/src/utils/dict.ts +++ b/apps/web-antd/src/utils/dict.ts @@ -27,6 +27,10 @@ function fetchAndCacheDictData( // 内部处理了push的逻辑 这里不用push setDictInfo(dictName, resp, formatNumber); }) + .catch(() => { + // 401时 移除字典缓存 下次登录重新获取 + dictRequestCache.delete(dictName); + }) .finally(() => { // 移除请求状态缓存 /**