|
@@ -5,29 +5,40 @@ import {getObjValue} from "js-fast-way"
|
|
export const httpApi = async (obj, message = true) => {
|
|
export const httpApi = async (obj, message = true) => {
|
|
return new Promise((resolve) => {
|
|
return new Promise((resolve) => {
|
|
//发起请求
|
|
//发起请求
|
|
- request(obj).then((response) => {
|
|
|
|
- resolve(getResData(response, false));
|
|
|
|
- }).catch((response) => {
|
|
|
|
|
|
+ request(obj).then(async (response) => {
|
|
|
|
+ resolve(await getResData(response, false));
|
|
|
|
+ }).catch(async (response) => {
|
|
if (message) window.$message?.error(getMsgVal(response));
|
|
if (message) window.$message?.error(getMsgVal(response));
|
|
- resolve(getResData(response, true));
|
|
|
|
|
|
+ resolve(await getResData(response, true));
|
|
})
|
|
})
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
//处理数据
|
|
//处理数据
|
|
-const getResData = (response, error = false) => {
|
|
|
|
- const headers = getObjValue(response?.headers), resData = getObjValue(response?.data);
|
|
|
|
- return {
|
|
|
|
- response,
|
|
|
|
- res: resData,
|
|
|
|
- data: resData?.data,
|
|
|
|
- code: resData?.code,
|
|
|
|
- msg: resData?.msg,
|
|
|
|
- status: response?.status,
|
|
|
|
- disposition: headers['content-disposition'],
|
|
|
|
- message: getMsgVal(response),
|
|
|
|
- error: error
|
|
|
|
- }
|
|
|
|
|
|
+const getResData = async (response, error = false) => {
|
|
|
|
+ return new Promise((resolve) => {
|
|
|
|
+ const {headers, data, config} = response
|
|
|
|
+ const headersx = getObjValue(headers), resData = getObjValue(data);
|
|
|
|
+ const httpData = {
|
|
|
|
+ response, res: resData, data: resData?.data, code: resData?.code, msg: resData?.msg, status: response?.status,
|
|
|
|
+ disposition: headersx['content-disposition'], message: getMsgVal(response), error: error
|
|
|
|
+ }
|
|
|
|
+ //处理延迟响应
|
|
|
|
+ const {startTime, endTime} = config.metadata
|
|
|
|
+ if (config.isDelay) {
|
|
|
|
+ const duration = endTime - startTime
|
|
|
|
+ if (duration < 500) {
|
|
|
|
+ setTimeout(() => {
|
|
|
|
+ console.log('duration:', duration, '延迟请求:', endTime - new Date())
|
|
|
|
+ resolve(httpData)
|
|
|
|
+ }, 1000 - duration)
|
|
|
|
+ } else {
|
|
|
|
+ resolve(httpData)
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ resolve(httpData)
|
|
|
|
+ }
|
|
|
|
+ })
|
|
}
|
|
}
|
|
|
|
|
|
//获取msg消息内容
|
|
//获取msg消息内容
|