import axios from 'axios' import myConfig from '@/assets/js/config.js' // import toolClass from '@/assets/js/toolClass.js' // 创建 axios 实例 const service = axios.create({ baseURL: process.env.VUE_APP_API_URL, timeout: myConfig.requestTimeOut // 请求超时时间 }) // 请求拦截器 service.interceptors.request.use( (config) => { let token = localStorage.getItem(myConfig.tokenKey) if (token) config.headers['Authorization'] = `bearer ${token}` console.log(localStorage.getItem(myConfig.tokenKey),"---"+8989899) return config }, (error) => { // 发送失败 Promise.reject(error) } ) // 响应拦截器 service.interceptors.response.use( (response) => { // dataAxios 是 axios 返回数据中的 data const dataAxios = response.data if (typeof dataAxios.data === 'boolean') { return dataAxios.data } if (response.config.responseType == 'blob') { return dataAxios } const { success } = dataAxios if (dataAxios.currentDate) { sessionStorage.currentDate = new Date(dataAxios.currentDate).getTime() } // 根据 code 进行判断 if (success) { return dataAxios.data ? dataAxios.data : dataAxios } else { // 提示错误 } }, (error) => { if (error.response && error.response.status == 401) { localStorage.removeItem(myConfig.tokenKey) console.log(error.response); } else { if (error.response && error.response.data && error.response.data.error) { console.error(error.response.data.error.msg) } else { console.error('请求发生错误') } } return Promise.reject(error) } ) export default service