fix: 完成: 诊所设置中心,消息中心
This commit is contained in:
@@ -13,11 +13,12 @@ import {
|
||||
import { useAccessStore } from '@vben/stores';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
// eslint-disable-next-line n/no-extraneous-import
|
||||
import { Base64 } from 'js-base64';
|
||||
|
||||
import { useAuthStore } from '#/store';
|
||||
|
||||
import { refreshTokenApi } from './core';
|
||||
import {Base64} from "js-base64";
|
||||
|
||||
const { apiURL } = useAppConfig(import.meta.env, import.meta.env.PROD);
|
||||
|
||||
@@ -45,7 +46,6 @@ function createRequestClient(baseURL: string) {
|
||||
* 重新认证逻辑
|
||||
*/
|
||||
async function doReAuthenticate() {
|
||||
console.warn('Access token or refresh token is invalid or expired. ');
|
||||
const accessStore = useAccessStore();
|
||||
const authStore = useAuthStore();
|
||||
accessStore.setAccessToken(null);
|
||||
@@ -55,7 +55,7 @@ function createRequestClient(baseURL: string) {
|
||||
) {
|
||||
accessStore.setLoginExpired(true);
|
||||
} else {
|
||||
await authStore.logout();
|
||||
await authStore.logout(true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,7 +102,7 @@ function createRequestClient(baseURL: string) {
|
||||
// 这里吧 data 换成了 result
|
||||
const { code, result } = responseData;
|
||||
// 判断返回状态码
|
||||
if (status >= 200 && status < 400) {
|
||||
if (status >= 200 && status <= 500) {
|
||||
switch (code) {
|
||||
case 0: {
|
||||
// 解密
|
||||
@@ -113,8 +113,16 @@ function createRequestClient(baseURL: string) {
|
||||
return result;
|
||||
}
|
||||
case 401: {
|
||||
response.status = 401;
|
||||
// 401 错误,需要重新登录
|
||||
return doReAuthenticate();
|
||||
authenticateResponseInterceptor({
|
||||
client,
|
||||
doReAuthenticate,
|
||||
doRefreshToken,
|
||||
enableRefreshToken: preferences.app.enableRefreshToken,
|
||||
formatToken,
|
||||
});
|
||||
break;
|
||||
}
|
||||
case 403:
|
||||
case 404:
|
||||
|
||||
Reference in New Issue
Block a user