import axios from 'axios'; import Vue from 'vue'; import context from '../main'; let loading; // axios.defaults.timeout = 3000000; // let loadinginstace; axios.interceptors.request.use( config => { config.headers = { "Content-Type": "application/json" } return config; }, error => { loading.close(); if (error) { context.$alert('网络错误,请稍后再试!','提示',{ confirmButtonText: '确定' }); return Promise.reject(error); } } ); axios.interceptors.response.use( res => { loading.close(); if (res.data.code == 0) { return res.data; } else { context.$alert(res.data.msg,'提示',{ confirmButtonText: '确定' }).then(()=>{ if(res.data.code == '1005') { context.$router.replace({path:'/login'}); } }); } }, err => { loading.close(); if (err.message.includes('timeout')) { err.message = '请求超时'; } else { if (err && err.response) { switch (err.response.status) { case 400: err.message = '请求错误(400)'; break; case 401: err.message = '未授权,请重新登录(401)'; break; case 403: err.message = '拒绝访问(403)'; break; case 404: err.message = '请求出错(404)'; break; case 408: err.message = '请求超时(408)'; break; case 500: err.message = '服务器错误(500)'; break; case 501: err.message = '服务未实现(501)'; break; case 502: err.message = '网络错误(502)'; break; case 503: err.message = '服务不可用(503)'; break; case 504: err.message = '网络超时(504)'; break; case 505: err.message = 'HTTP版本不受支持(505)'; break; default: err.message = `连接出错(${err.response.status})!`; } } else { err.message = '连接服务器失败!' } } context.$alert(err.message,'提示',{ confirmButtonText: '确定' }); return Promise.reject(err); }); Vue.prototype.$axios = axios; let requestLoading = (url, method, params, showLoading = true) => { if (showLoading) { loading = context.$loading({ lock: true, text: '加载中...', spinner: 'el-icon-loading', background: 'rgba(0, 0, 0, 0.2)' }); } return axios({ method: method, url: url, withCredentials: true, params, data: params, timeout: 120000 }) }; // const TestSrv = process.env.NODE_ENV == 'production' ? 'http://39.97.239.116:8080' : '/api'; // const StanleyLocal = process.env.NODE_ENV == 'production' ? 'http://api.zng.com:8080' : '/api'; const StanleyLocal = process.env.NODE_ENV == 'production' ? 'http://192.168.1.200:8080' : '/api'; const Prefix = StanleyLocal; //测试请求 export const testRequest = () => { return requestLoading(`${Prefix}/index.php?index/index/index`, 'get', {}) } //登录 export const login = (params) => { return requestLoading(`${Prefix}/login`, 'get', params) } //登出 export const loginOut = () => { return requestLoading(`${Prefix}/LoginOut`, 'get', {}) } //订单列表 export const orderList = (params) => { return requestLoading(`${Prefix}/OrderList`, 'get', params) } //箱子操作记录列表 export const boxActionList = (params) => { return requestLoading(`${Prefix}/BoxActionList`, 'get', params) } //柜子列表 export const cabinetList = (params) => { return requestLoading(`${Prefix}/CabinetList`, 'get', params) } //箱子列表 export const boxList = (params) => { return requestLoading(`${Prefix}/BoxList`, 'post', params) } //新增柜子 export const addCabinet = (params) => { return requestLoading(`${Prefix}/AddCabinet`, 'post', params) } //日志记录 export const actionLogList = (params) => { return requestLoading(`${Prefix}/ActionLogList`, 'post', params) } //消息记录 export const msgList = (params) => { return requestLoading(`${Prefix}/MsgList`, 'post', params) } //柜子状态 export const reboot = (params) => { return requestLoading(`${Prefix}/Reboot`, 'post', params) } // export const AddCabinet = (alias,url,count) => { // return requestLoading(`${Prefix}/index.php/api/AddCabinet?alias=${alias}&url=${url}&count=${count}`, 'get', {}) // }