From 382bd92f029be1f92c1be93507ec2b8146a289e7 Mon Sep 17 00:00:00 2001 From: FatttSnake Date: Thu, 18 May 2023 17:03:43 +0800 Subject: [PATCH] Optimized the front-end request logic --- ui/src/services/index.ts | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/ui/src/services/index.ts b/ui/src/services/index.ts index d8aa729..8264a78 100644 --- a/ui/src/services/index.ts +++ b/ui/src/services/index.ts @@ -1,7 +1,12 @@ import axios, { type AxiosError } from 'axios' import { clearLocalStorage, getToken } from '@/utils/common' import router from '@/router' -import { TOKEN_HAS_EXPIRED, TOKEN_IS_ILLEGAL, UNAUTHORIZED } from '@/constants/Common.constants' +import { + ACCESS_DENIED, + TOKEN_HAS_EXPIRED, + TOKEN_IS_ILLEGAL, + UNAUTHORIZED +} from '@/constants/Common.constants' import { ElMessage } from 'element-plus' const service = axios.create({ @@ -24,7 +29,7 @@ service.interceptors.request.use( ) service.interceptors.response.use( - (response) => { + async (response) => { switch (response.data.code) { case UNAUTHORIZED: case TOKEN_IS_ILLEGAL: @@ -37,6 +42,13 @@ service.interceptors.response.use( setTimeout(function () { router.go(0) }, 1500) + return await Promise.reject(response?.data) + case ACCESS_DENIED: + ElMessage.error({ + dangerouslyUseHTMLString: true, + message: '暂无权限操作' + }) + return await Promise.reject(response?.data) } return response },