鉴权完成,并修复小程序接口拦截器问题
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user