import axios from 'axios' // eslint-disable-next-line no-undef const Message = { error: (msg) => { console.log('Message.error', msg) } } function genServer(baseURL) { const serves = axios.create({ baseURL: baseURL, timeout: 60 * 1000 }) // 设置请求发送之前的拦截器 serves.interceptors.request.use(config => { // 设置发送之前数据需要做什么处理 return config }, err => Promise.reject(err)) // 设置请求接受拦截器 serves.interceptors.response.use(res => { // console.log('res = ', res) // 设置接受数据之后,做什么处理 // if (res.data.errmsg !== '') { if (res.data.status !== 200) { Message.error(res.data) Promise.reject(res.data) } return res.data }, err => { // 判断请求异常信息中是否含有超时timeout字符串 if (err.message.includes('timeout')) { console.log('错误回调', err.message) Message.error('网络超时') } if (err.message.includes('Network Error')) { console.log('错误回调', err.message) Message.error('服务端未启动,或网络连接错误') } return Promise.reject(err) }) return serves } export { genServer }