import axios from 'axios' import config from '../config/config' import axiosAdapterUniapp from 'axios-adapter-uniapp' const service = axios.create({ baseURL: config.baseApi, // url = base url + request url headers: { 'X-Requested-With': 'XMLHttpRequest', 'Content-Type': 'application/json-patch+json' }, adapter: axiosAdapterUniapp, timeout: 5000 // request timeout }) // request interceptor service.interceptors.request.use( config => { if(uni.getStorageSync('ukey')){ config.headers['Authorization'] = 'Bearer ' + uni.getStorageSync('ukey') } // if(config.params && !config.params.isFilter && !uni.getStorageSync('ukey')){ // uni.redirectTo({ // url:'/pages/login/login' // }) // } // if(config.data && !config.data.isFilter && !uni.getStorageSync('ukey')){ // uni.redirectTo({ // url:'/pages/login/login' // }) // } // do something before request is sent return config }, error => { // do something with request error console.log(error) // for debug return Promise.reject(error) } ) // response interceptor service.interceptors.response.use( response => { const res = response.data if(res.status == 250 ){ uni.showToast({ title: `提示${res.msg}`, icon:'error', duration: 1000 }); } if(res.code == 30){ uni.showToast({ title: `token已经过期需要重新登录`, icon:'error', duration: 1000 }); uni.removeStorageSync("ukey"); uni.redirectTo({ url:'/pages/login/login' }) return } return res }, error => { console.log('err' + error) // for debug return Promise.reject(error) } ) export default service