Complete main UI #37
@@ -1,6 +1,6 @@
|
||||
import axios, { type AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'
|
||||
import jwtDecode, { JwtPayload } from 'jwt-decode'
|
||||
import { clearLocalStorage, getToken, setToken } from '@/utils/common'
|
||||
import { getToken, removeToken, setToken } from '@/utils/common'
|
||||
import {
|
||||
SYSTEM_ACCESS_DENIED,
|
||||
SYSTEM_TOKEN_HAS_EXPIRED,
|
||||
@@ -66,9 +66,19 @@ service.interceptors.response.use(
|
||||
(response: AxiosResponse<_Response<never>>) => {
|
||||
switch (response.data.code) {
|
||||
case SYSTEM_UNAUTHORIZED:
|
||||
removeToken()
|
||||
void message.error(
|
||||
<>
|
||||
<strong>未登录</strong>
|
||||
</>
|
||||
)
|
||||
setTimeout(() => {
|
||||
location.reload()
|
||||
}, 1500)
|
||||
throw response?.data
|
||||
case SYSTEM_TOKEN_ILLEGAL:
|
||||
case SYSTEM_TOKEN_HAS_EXPIRED:
|
||||
clearLocalStorage()
|
||||
removeToken()
|
||||
void message.error(
|
||||
<>
|
||||
<strong>登录已过期</strong>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { getCaptcha, getLocalStorage, removeLocalStorage, setLocalStorage } from './common'
|
||||
import { getCaptcha, getLocalStorage, removeToken, setLocalStorage } from './common'
|
||||
import { SYSTEM_OK, TOKEN_NAME } from '@/constants/Common.constants'
|
||||
import request from '@/services'
|
||||
|
||||
@@ -13,8 +13,7 @@ export const login = async (username: string, password: string) => {
|
||||
|
||||
export const logout = async () => {
|
||||
return request.post('/logout').finally(() => {
|
||||
removeLocalStorage('userInfo')
|
||||
removeLocalStorage(TOKEN_NAME)
|
||||
removeToken()
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -69,6 +69,7 @@ export const removeLocalStorage = (name: string) => {
|
||||
}
|
||||
|
||||
export const removeToken = () => {
|
||||
removeLocalStorage('userInfo')
|
||||
removeLocalStorage(TOKEN_NAME)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user