You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.7 KiB
60 lines
1.7 KiB
import axios from 'axios'; |
|
// import {Message} from 'element-ui'; |
|
|
|
import Cookie from '@/common/cookie'; |
|
import {getCurrentLanguage, languageCode2BELocalCode} from '@/common/i18n'; |
|
|
|
// create an axios instance |
|
const service = axios.create({ |
|
baseURL: process.env.VUE_APP_API_BASE_URL, // api 的 base_url |
|
// timeout: 15e3, // 请求超时默认时间,如个别接口预定响应时间较长,自行设置 |
|
timeout: 5000, // 请求超时默认时间,如个别接口预定响应时间较长,自行设置 |
|
}); |
|
|
|
// request interceptor |
|
service.interceptors.request.use( |
|
config => { |
|
// Do something before request is sent |
|
config.headers['X-Requested-Token'] = localStorage.getItem('token') || ''; |
|
config.headers['X-Requested-YyyfToken'] = localStorage.getItem('yyyfToken') || ''; |
|
config.headers['locale'] = languageCode2BELocalCode(getCurrentLanguage()); |
|
return config; |
|
}, |
|
|
|
error => { |
|
// Do something with request error |
|
process.env.NODE_ENV === 'production' || console.log('err' + error); // for debug |
|
|
|
return Promise.reject(error); |
|
} |
|
); |
|
|
|
// response interceptor |
|
service.interceptors.response.use( |
|
response => response, |
|
|
|
error => { |
|
process.env.NODE_ENV === 'production' || console.log('err' + error); // for debug |
|
|
|
// let errMsg; |
|
|
|
// switch (Cookie.get('lang')) { |
|
// case 'zh-HK': |
|
// errMsg = '您的網絡出了個小差!'; |
|
// break; |
|
// case 'en': |
|
// errMsg = 'Something is wrong with your network!'; |
|
// break; |
|
// default: |
|
// errMsg = '您的网络出了个小差!'; |
|
// } |
|
|
|
// Message({ |
|
// message: errMsg, |
|
// type: 'error', |
|
// }); |
|
return Promise.reject(error); |
|
} |
|
); |
|
|
|
export default service;
|
|
|