import axios from 'axios' axios.defaults.baseURL = '/minkesoft/webapi/dostar' axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' axios.defaults.crossDomain = true axios.defaults.withCredentials = true axios.interceptors.request.use((config) => { // 在发送请求之前做些什么 config.data == undefined ? config.data = {} : false config.method = 'post' config.data.userid = '' config.data = JSON.stringify(config.data) return config }, (error) => { // 对请求错误做些什么 return Promise.reject(error) }); axios.interceptors.response.use((response) => { // 对响应数据做点什么 // response.data = JSON.parse(response.data) return Promise.resolve(response.data) }, (error) => { // 对响应错误做点什么 return Promise.resolve(error) }); export default class Service { constructor () { } /** * @description 获取官网基础数据,并缓存至session * @param {String} DBS 存储过程 */ getBaseData (DBS) { // let cachedata = sessionStorage.getItem(DBS) let cachedata = '' if (cachedata) { return Promise.resolve(JSON.parse(cachedata)) } else { return new Promise(resolve => { axios({ data: { func: DBS } }).then(res => { if (res.status) { sessionStorage.setItem(DBS, JSON.stringify(res)) } resolve(res) }) }) } } /** * @description 获取官网基础数据,并缓存至session * @param {String} param 请求参数 */ getParamData (param) { let _param = JSON.stringify(param) // let cachedata = sessionStorage.getItem(_param) let cachedata = '' if (cachedata) { return Promise.resolve(JSON.parse(cachedata)) } else { return new Promise(resolve => { axios({ data: param }).then(res => { if (res.status) { sessionStorage.setItem(_param, JSON.stringify(res)) } resolve(res) }) }) } } }