1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee
Files
epp/frontend/src/utils/send_request.js

55 lines
1.4 KiB
JavaScript

import request from './request';
import settings from './settings';
import { ElMessage, ElLoading } from 'element-plus';
import qs from 'qs';
async function send_request({ url, method = "POST", params, useQS = false, callback }) {
if (!url) {
return false;
}
const loading = ElLoading.service({
lock: true,
text: '请稍候',
background: 'rgba(0, 0, 0, 0.7)',
});
let opt = {
baseURL: settings.backendHost,
url: url,
method: method,
withCredentials: true,
}
if (method.toUpperCase() == "POST") {
// POST 请求参数
opt.headers = { 'content-type': 'application/x-www-form-urlencoded' }
opt.data = useQS ? qs.stringify(params) : params
} else if (method.toUpperCase() == "GET") {
// GET 请求参数
opt.params = params
}
return request(opt).then((response) => {
let result = response.data;
// 判断后端是否处理成功
if (!result.success) {
ElMessage.error(result?.msg || "服务器错误");
return null;
}
let data = result.data;
if (typeof (callback) === "function") {
callback(data);
}
return data;
}).catch((err) => {
console.error(err);
ElMessage.error(err.message);
return false;
}).finally(() => {
loading.close();
})
}
export default send_request;