/*
|
* @Company: hugeInfo
|
* @Author: ldh
|
* @Date: 2022-02-16 11:28:12
|
* @LastEditTime: 2024-08-27 11:18:41
|
* @LastEditors: dminyi 1301963064@qq.com
|
* @Version: 1.0.0
|
* @Description: axios处理方法
|
*/
|
import axios from 'axios';
|
import { catchApiError, appUrl, getSessionStorage, info } from '../utils/utility';
|
|
// 网络异常
|
function networkException(err) {
|
if (err.code >= 400) {
|
catchApiError({ content: '抱歉! 网络异常请刷新' });
|
} else {
|
catchApiError({ content: '抱歉! 网络错误' });
|
}
|
}
|
|
// api返回结果处理
|
function resHandle(resData) {
|
const { code, data, msg } = resData;
|
if (code === 0 || code === '0') {
|
// let res_data = data ? aes_decrypt(data) : true;
|
return { type: true, data };
|
} else if (code === 401 || code === '401') {
|
catchApiError({ content: '抱歉! 登录状态已失效请重新登录', loginStatus: 'lose' });
|
return { type: false };
|
} else if (code === 105 || code === '105') {
|
return { type: false, code, data, msg };
|
} else if (code === 106 || code === '106') {
|
return { type: false, code, data, msg };
|
} else if (code === -1 || code == '-1') {
|
catchApiError({ content: msg });
|
return { type: false };
|
} else {
|
info({ type: 'warning', content: msg });
|
return { type: false };
|
}
|
}
|
|
export const ax = axios;
|
|
export function request(value = {}) {
|
let token = getSessionStorage('customerSystemToken');
|
|
// 无token时
|
if (!token && value.url !== 'ctAccount/login') {
|
catchApiError({ content: '抱歉!登录状态已失效请重新登录', loginStatus: 'lose' });
|
return { type: false };
|
}
|
|
// let data = aes_encrypt(JSON.stringify(value.data));
|
let data = value.data;
|
|
const url =
|
value.service === 'sys'
|
? `${appUrl.fileUrl}/${appUrl[value.service] || ''}/api/v1/${value.url}`
|
: `${appUrl.baseUrl}/${appUrl[value.service] || ''}/api/v1/${value.url}`;
|
|
if (value.type === 'get') {
|
return ax
|
.get(url, { params: data, headers: { 'Authorization': token } })
|
.then((response) => {
|
return resHandle(response.data);
|
})
|
.catch((err) => {
|
networkException(err);
|
return { type: false };
|
});
|
} else {
|
return ax
|
.post(url, data, { headers: { 'Authorization': token } })
|
.then((response) => {
|
return resHandle(response.data);
|
})
|
.catch((err) => {
|
networkException(err);
|
return { type: false };
|
});
|
}
|
}
|