This commit is contained in:
oneao committed 2025-12-12 17:27:55 +08:00
1 parent 861b529d9b
commit c4bd60d0cc
16 files changed
+689 -87

No files matched your search

@@ -0,0 +1,12 @@
import type { forgetApiParams, loginApiParams, loginApiResult, registerApiParams } from '@/types/auth'
import { httpPostJson } from '../utils'
export function loginApi(params: loginApiParams) {
return httpPostJson<loginApiResult>(`/auth/login`, params)
}
export function registerApi(params: registerApiParams) {
return httpPostJson<null>(`/auth/register`, params)
}
export function forgetApi(params: forgetApiParams) {
return httpPostJson<null>(`/auth/forget`, params)
}
@@ -1,6 +1,6 @@
import type { AxiosError, AxiosInstance, AxiosResponse, InternalAxiosRequestConfig } from 'axios'
import axios from 'axios'
import { useRouter } from 'vue-router'
import { router } from '@/router/index'
import { useUserStore } from '@/store/user'
function buildBaseUrl() {
@@ -42,7 +42,7 @@ const NoFreePaths = [
// 请求拦截器
axiosInstance.interceptors.request.use(
(config: InternalAxiosRequestConfig) => {
const router = useRouter()
// const router = useRouter()
const userStore = useUserStore()
const path = config.url || ''
@@ -62,7 +62,7 @@ axiosInstance.interceptors.request.use(
return config
},
(error: AxiosError) => {
console.log("===ReqError===");
console.log('===ReqError===')
return Promise.reject(error)
},
)
@@ -80,18 +80,29 @@ axiosInstance.interceptors.response.use(
}
const resData = response.data as ResponseData<any>
response.data.data = parseJsonOrReturnString(response.data.data)
if (resData.code === 200) {
return Promise.resolve(response.data)
if (resData.code === 401) {
router.push('/auth/login')
return Promise.reject(response.data)
}
else if (resData.code === 404) {
router.push('/error/404')
return Promise.reject(response.data)
}
else {
return Promise.reject(resData)
resData.isSuccess = resData.code === 200
return Promise.resolve(response.data)
}
},
(error: AxiosError) => {
console.log("===ResError===");
if (error.status === 500) {
router.push('/error/500')
}
if (error.status === 404) {
router.push('/error/404')
}
return Promise.reject(error)
},
)