fix(api): 完善401错误处理逻辑
Some checks failed
Release pipeline / publish (push) Has been cancelled
Release pipeline / Always run job (push) Has been cancelled

统一处理登录态过期场景,清除token并跳转登录页
This commit is contained in:
sheng
2026-06-01 11:02:59 +08:00
parent 20a821ba32
commit c9498c444b

View File

@@ -5,6 +5,7 @@ import { get, isEmpty, merge } from 'lodash'
import qs from 'qs' import qs from 'qs'
import util from '@/libs/util' import util from '@/libs/util'
import store from '@/store' import store from '@/store'
import router from '@/router'
/** /**
* @description 记录和显示错误 * @description 记录和显示错误
@@ -84,7 +85,8 @@ function createService () {
switch (response.data.code) { switch (response.data.code) {
case 0: return response.data.data case 0: return response.data.data
case 401: case 401:
errorMessage = '请重新登录' util.cookies.remove('token')
router.replace({ name: 'login' })
break break
default: default:
errorMessage = response.data.msg || '请求失败' errorMessage = response.data.msg || '请求失败'
@@ -98,7 +100,11 @@ function createService () {
const status = get(error, 'response.status') const status = get(error, 'response.status')
switch (status) { switch (status) {
case 400: error.message = '请求错误'; break case 400: error.message = '请求错误'; break
case 401: error.message = '未授权,请登录'; break case 401:
util.cookies.remove('token')
router.replace({ name: 'login' })
error.message = '未授权,请登录'
break
case 403: error.message = '拒绝访问'; break case 403: error.message = '拒绝访问'; break
case 404: error.message = `请求地址出错: ${error.response.config.url}`; break case 404: error.message = `请求地址出错: ${error.response.config.url}`; break
case 408: error.message = '请求超时'; break case 408: error.message = '请求超时'; break