鉴权完成,并修复小程序接口拦截器问题

This commit is contained in:
aixianling
2023-01-13 17:57:46 +08:00
parent 9c26e09326
commit 5594dc2378
8 changed files with 107 additions and 16 deletions

View File

@@ -1,5 +1,7 @@
import axios from 'axios'
import adapter from 'axios-miniprogram-adapter'
import {mainStore} from "./pinia";
import util from "./util";
const instance = axios.create({
baseURL: "http://localhost:7001",
@@ -7,9 +9,9 @@ const instance = axios.create({
withCredentials: true,
adapter
})
const store = mainStore()
const getToken = () => {
let vuex = uni.getStorageSync("vuex")
return !!vuex ? JSON.parse(vuex).token : null
return store?.token || null
}
const source = axios.CancelToken.source();
instance.interceptors.request.use(config => {
@@ -26,5 +28,21 @@ instance.interceptors.request.use(config => {
console.error(err)
return Promise.reject(err)
})
instance.interceptors.response.use(
function (response) {
util.$hideLoading();
if (response.data.code === 1) {
util.$toast({title: response.data.msg, duration: 3000});
} else if (response.data.code == 2) {
//首次静默登录异常不做任何返回
} else if (response.data.code === 401) {
store.token = null
} else {
return response.data;
}
},
function (err) {
console.log(err);
}
);
export default instance