/* * @Company: hugeInfo * @Author: ldh * @Date: 2022-02-16 11:28:12 * @LastEditTime: 2024-09-08 10:31:44 * @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 = {}) { console.log(value); let token = getSessionStorage("customerSystemToken"); // 无token、非登录、非网格单点跳转时 if (!value.isGrid && !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/web/${value.url}` : `${appUrl.baseUrl}/${appUrl[value.service] || ""}/api/web/${value.url}`; const urlAi = `${appUrl.fileUrl}/${appUrl[value.service] || ""}/api/ai/${ value.urlAi }`; if (value.typeAi === "get") { return ax .get(urlAi, { params: data, headers: { Authorization: token } }) .then((response) => { return resHandle(response.data); }) .catch((err) => { networkException(err); return { type: false }; }); } if (value.typeAi === "post") { return ax .post(urlAi, data, { headers: { Authorization: token } }) .then((response) => { return resHandle(response.data); }) .catch((err) => { networkException(err); return { type: false }; }); } 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 if (value.type === "delete") { return ax .delete(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 }; }); } }