import axios from 'axios' var isProduction = process.env.NODE_ENV === 'production' const serverName = isProduction ? '/' : 'http://192.168.0.245:8003/' const orginLink = window.location.origin axios.defaults.baseURL = serverName axios.defaults.headers['X-Requested-with'] = 'XMLHttpRequest' axios.interceptors.request.use(function (config) { config.headers['token'] = window.localStorage.getItem('webtoken') if (config.method === 'post') { config.data = { ...config.data, rnd: Math.random() } // config.data = qs.stringify(config.data) } else if (config.method === 'get') { config.params = { rnd: Math.random(), ...config.params } // config.params = qs.stringify(config.params) } return config }, function (error) { // 对请求错误做些什么 return Promise.reject(error) }) // 配置response拦截器 axios.interceptors.response.use( response => { let data = response.data let code = Number(response.data.code) switch (code) { case -1: alert(data.msg) break case 4500: break case 5001: window.localStorage.setItem('webtoken', '') window.localStorage.setItem('webuserInfo', '') return alert('请登录后再操作') case 5002: window.localStorage.setItem('webtoken', '') window.localStorage.setItem('webuserInfo', '') return alert('请登录后再操作') case 500: break case 0: break default: alert(data.msg) break } // tryHideFullScreenLoading() return data }, error => { window.localStorage.setItem('webtoken', '') window.localStorage.setItem('webuserInfo', '') if (error.response) { switch (error.response.code) { case 500: window.localStorage.setItem('webtoken', '') window.localStorage.setItem('webuserInfo', '') break } } return Promise.reject(error) } ) export { serverName,orginLink, axios }