From 12f08c16ee7c7176368b5961fe104ed698227a8d Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 11 九月 2025 17:41:50 +0800
Subject: [PATCH] Merge branch 'master' into dev-v1.1
---
apps/cMiniApp/src/utils/request/index.ts | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/apps/cMiniApp/src/utils/request/index.ts b/apps/cMiniApp/src/utils/request/index.ts
index 339d938..34b5098 100644
--- a/apps/cMiniApp/src/utils/request/index.ts
+++ b/apps/cMiniApp/src/utils/request/index.ts
@@ -10,6 +10,7 @@
/** 璇锋眰鐧藉悕鍗曪紝鏀剧疆涓�浜涗笉闇�瑕乼oken鐨勬帴鍙o紙閫氳繃璁剧疆璇锋眰鐧藉悕鍗曪紝闃叉token杩囨湡鍚庡啀璇锋眰閫犳垚鐨勬寰幆闂锛� */
const whiteList = [RefreshTokenUrl];
+const RefreshTokenBlackList = ['wxmpLogin'];
export function startLoading(showNavigationBarLoading: boolean) {
if (showNavigationBarLoading) {
@@ -115,6 +116,9 @@
const errorInfo: ErrorInfo | undefined = (error as any).info;
if (errorInfo) {
const { errorMessage, errorCode } = errorInfo;
+ if (Number(errorCode) === 401) {
+ handleLogout();
+ }
switch (errorInfo.showType) {
case ErrorShowType.SILENT:
// do nothing
@@ -138,7 +142,7 @@
} else if ((error as AxiosError<ResponseStructure, IRequestOptions>).response) {
// Axios 鐨勯敊璇�
// 璇锋眰鎴愬姛鍙戝嚭涓旀湇鍔″櫒涔熷搷搴斾簡鐘舵�佺爜锛屼絾鐘舵�佷唬鐮佽秴鍑轰簡 2xx 鐨勮寖鍥�
- handleAxiosResponseError(error as AxiosError<ErrorResponse, IRequestOptions>);
+ handleAxiosResponseError(error as AxiosError<ResponseStructure, IRequestOptions>);
// Message.errorMessage(`Response status:${(error as AxiosError).response.status}`);
} else if ((error as AxiosError).request) {
// 璇锋眰宸茬粡鎴愬姛鍙戣捣锛屼絾娌℃湁鏀跺埌鍝嶅簲
@@ -216,8 +220,11 @@
const userStore = useUserStoreWithOut();
- if (response.headers['x-access-token']) {
- const tokenInfo: API.PasswordLoginCommandCallback = {
+ if (
+ response.headers['x-access-token'] &&
+ RefreshTokenBlackList.every((url) => !response.config.url?.includes(url))
+ ) {
+ const tokenInfo: API.LoginCommandCallback = {
accessToken: response.headers['access-token'],
refreshToken: response.headers['x-access-token'],
};
@@ -251,17 +258,17 @@
[505]: 'HTTP鐗堟湰涓嶅彈鏀寔',
};
-function handleAxiosResponseError(error: AxiosError<ErrorResponse, IRequestOptions>) {
+function handleAxiosResponseError(error: AxiosError<ResponseStructure, IRequestOptions>) {
if (error.response.config.url.toLowerCase().includes(RefreshTokenUrl.toLowerCase())) {
handleLogout();
return;
}
if (error && error.response) {
let message = ErrorMessageMap[error.response?.status] ?? '璇锋眰閿欒';
- if (error.response.data?.error?.message) {
- message = error.response.data?.error?.message;
+ if (error.response.data?.msg) {
+ message = error.response.data?.msg;
}
- if (error.response?.status === 401) {
+ if (error.response?.status === 401 || error.response.data.code === 401) {
handleLogout();
}
--
Gitblit v1.9.1