//如果部署在同域名的话可以直接取cookie,后端需 HttpOnly 设置成否 // var cookie_name = 'wolfking.jeesharp.session.id' // getCookie(cookie_name) // 是否本地环境 function isLocalEnv() { let domain = window.location.origin if (['http://127.0.0.1:5500', 'file://'].includes(domain)) { return true } else { return false } } // api 前缀 function getApiUrl() { // 为线上时 if (!isLocalEnv()) { return window.location.origin } else { // 本地时 // return 'http://sxtc.com:10002' // 内网环境 // return 'http://10.8.8.100:10002' // 内网环境 // return 'http://1.71.170.214:18080' // 线上环境 // return 'http://szxm.sxcig.com:8012' // 线上环境 // return 'http://10.0.0.27:8080' // 超哥环境 // return 'http://10.0.0.22:8080' // 闫敏的环境 // return 'http://10.0.0.8:8080' // 祥慧的环境 // return 'http://10.0.0.115:8080' // 王蒙的环境 return 'http://10.0.0.74:8080' } } // websocket 前缀 function getWsUrl() { let prefix = location.protocol === 'https:' ? 'wss://' : 'ws://' // 为线上时 if (!isLocalEnv()) { return prefix + window.location.host } else { return prefix + 'sxtc.com:10002' // return prefix + '10.0.0.115:8080' } } // minio 前缀 function getMinioUrl() { let isProduction = location.origin.indexOf('1.71.170.214') != -1 if (isProduction) { return 'http://1.71.170.214:19000/constr-documents/' } else { return 'http://10.8.8.191:9000/constr-documents-test/' } } /** axios封装 * 请求拦截、相应拦截、错误统一处理 */ const httpRequest = axios.create({ baseURL: 'http://10.0.0.82:8080', // 测试环境 timeout: 3 * 60 * 1000, // 3分钟等待 withCredentials: true // 携带cookie }) // 请求拦截器 // httpRequest.interceptors.request.use( // function (config) { // if (!isLocalEnv()) { // if (getQueryVariable('token')) { // config.headers['access_token'] = getQueryVariable('token') // } // } else { // config.headers['access_token'] = localStorage.getItem('token') // // config.headers['access_token'] = '4b3ed521-f509-48d9-b907-ab127479df41' // } // // 上传文件 // if (config.url == '/apiSys/oss/upload') { // config.headers['Content-Type'] = 'multipart/form-data' // } else { // config.headers['Content-Type'] = 'application/json' // } // return config // }, // function (error) { // return Promise.reject(error) // } // ) //响应拦截 httpRequest.interceptors.response.use( function (response) { const res = response.data // if (res.code == 201) { // this.ELEMENT.Message.error(res.msg) // if (!isLocalEnv()) { // // 跳登录页 // window.location = window.location.origin // } else { // localEnvLogin() // } // } return response }, function (error) { this.ELEMENT.Message.error(error.message) return Promise.reject(error) } ) function get(url, params) { return new Promise((resolve, reject) => { httpRequest .get(url, { params: params }) .then(res => { resolve(res.data) }) .catch(err => { reject(err.data) }) }) } // qs.stringify(data) function post(url, data, config) { return new Promise((resolve, reject) => { httpRequest .post(url, data, config) .then(res => { resolve(res.data) }) .catch(err => { reject(err) }) }) } function postFile(url, blob) { return new Promise((resolve, reject) => { let formdata = new FormData() formdata.append('multipartFile', blob) httpRequest .post(url, formdata) .then(res => { resolve(res.data) }) .catch(err => { reject(err) }) }) } function localEnvLogin() { post( '/apiSys/login', { username: 'admin', password: '1q2w3e4r5t' }, { transformRequest: [ function (data, headers) { // 将请求数据转换成功 formdata 接收格式 headers['Content-Type'] = 'application/x-www-form-urlencoded' return stringify(data) } ] } ).then(res => { localStorage.setItem('token', res.data.token || getQueryVariable('token')) }) } // 将参数转换成功 formdata 接收格式 function stringify(data) { let ret = '' for (const it in data) { ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' } ret = ret.substring(0, ret.lastIndexOf('&')) return ret }