|
|
@@ -0,0 +1,71 @@
|
|
|
+import axios from 'axios'
|
|
|
+import AES from '@/utils/aes'
|
|
|
+
|
|
|
+const service = axios.create({
|
|
|
+ baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url
|
|
|
+})
|
|
|
+import {
|
|
|
+ Dialog
|
|
|
+} from 'vant';
|
|
|
+// request interceptor
|
|
|
+service.interceptors.request.use(
|
|
|
+ config => {
|
|
|
+ if (sessionStorage.getItem('x-token')) {
|
|
|
+ config.headers['x-token'] = sessionStorage.getItem('x-token')
|
|
|
+ }
|
|
|
+ if (config.type === 'change') {
|
|
|
+ config.headers['Content-Type'] = 'application/x-www-form-urlencoded'
|
|
|
+ } else if (config.type === 'formData') {
|
|
|
+ config.headers['Content-Type'] = 'multipart/form-data;charset=utf-8;'
|
|
|
+ } else {
|
|
|
+ config.headers['Content-Type'] = 'application/json'
|
|
|
+ }
|
|
|
+ if (config.encrypt){
|
|
|
+ var encrypted = AES.encrypt(JSON.stringify(config.data))
|
|
|
+ config.data={encryptData: encrypted}
|
|
|
+ config.headers['toEncrypt'] = 'true'
|
|
|
+ }
|
|
|
+ return config
|
|
|
+ },
|
|
|
+ error => {
|
|
|
+ // do something with request error
|
|
|
+ console.log(error) // for debug
|
|
|
+ return Promise.reject(error)
|
|
|
+ }
|
|
|
+)
|
|
|
+
|
|
|
+// response interceptor
|
|
|
+service.interceptors.response.use(
|
|
|
+ response => {
|
|
|
+ const res = response.data
|
|
|
+ const config = response.config
|
|
|
+ if (config != null) {
|
|
|
+ const blob = response.config.responseType
|
|
|
+ if (blob == 'blob') {
|
|
|
+ return res
|
|
|
+ }
|
|
|
+ }
|
|
|
+ console.log(res)
|
|
|
+ if (res.code === '0001') {
|
|
|
+ Dialog({
|
|
|
+ message: res.message || 'Error'
|
|
|
+ });
|
|
|
+ return res
|
|
|
+ }
|
|
|
+ if (res.code !== '0000') {
|
|
|
+ Dialog({
|
|
|
+ message: res.message || 'Error'
|
|
|
+ });
|
|
|
+ return Promise.reject(new Error(res.message || 'Error'))
|
|
|
+ } else {
|
|
|
+ res.data = JSON.parse(AES.decrypt(res.data))
|
|
|
+ return res
|
|
|
+ }
|
|
|
+ },
|
|
|
+ error => {
|
|
|
+ console.log('err' + error) // for debug
|
|
|
+ return Promise.reject(error)
|
|
|
+ }
|
|
|
+)
|
|
|
+
|
|
|
+export default service
|