chache/utils/request.js
2024-01-16 22:56:01 +08:00

139 lines
4.0 KiB
JavaScript

var e = require("../common/vendor.js"),
n = require("../hooks/useState.js"),
o = require("../config/index.js"),
t = require("../service/index.js"),
r = require("./util.js");
require("../constant/index.js");
(exports.request = function a(c) {
var s = c.url,
i = c.method,
u = c.formData,
l = c.needToast,
d = void 0 === l || l,
m = c.count,
h = void 0 === m ? 0 : m,
g = n.useState(),
f = g.channelName,
p =
(g.userLogout,
{
version: o.appVersion,
token: e.index.getStorageSync("token"),
channel: f.value ? f.value : o.defaultChannelName,
phoneType: e.index.getSystemInfoSync().deviceModel,
}),
v = r.encrypt(e._.cloneDeep(u), p.channel);
return (
console.log("[请求开始] -- ", {
渠道来源: p.channel,
请求地址: "".concat(o.baseUrl).concat(s),
请求参数: v || null,
token: p.token || "",
count: h,
}),
e.index
.request({
url: "".concat(o.baseUrl).concat(s),
method: i,
data: v,
header: p,
timeout: 1e4,
dataType: "json",
})
.then(function (n) {
var o = n.statusCode,
c = n.data,
l = r.decrypt(c.data),
d = l.code,
m = l.msg,
g = l.data;
if ((console.log("[请求结束] -- ", g, m, d), 200 === o)) {
if (0 === d) return Promise.resolve(g);
if (301 === d) {
return (function () {
return e.index
.login({ provider: "weixin" })
.then(function (e) {
var n = e.code;
return t.loginForMpWeixin({ code: n });
})
.then(function (n) {
var o = n.token,
t = n.openId;
return (
e.index.setStorageSync("token", o),
e.index.setStorageSync("openId", t),
a({ url: s, method: i, formData: u, needToast: !1 })
);
});
})();
}
return h < 3
? a({ url: s, method: i, formData: u, needToast: !1, count: h + 1 })
: Promise.reject({ msg: m });
}
return Promise.reject({ msg: m });
})
.catch(function (e) {
return (
console.error("[请求报错] -- ", e),
d && r.showToast(e.msg ? e.msg : "接口请求失败,请重新加载"),
Promise.reject()
);
})
);
}),
(exports.upload = function (t) {
var a = t.url,
c = t.name,
s = t.filePath,
i = t.formData,
u = t.needToast,
l = void 0 === u || u,
d = n.useState().channelName,
m = {
version: o.appVersion,
token: e.index.getStorageSync("token"),
channel: d.value ? d.value : o.defaultChannelName,
phoneType: e.index.getSystemInfoSync().deviceModel,
},
h = r.encrypt(e._.cloneDeep(i), m.channel);
return (
console.log("[请求开始] -- ", {
渠道来源: m.channel,
请求地址: "".concat(o.baseUrl).concat(a),
请求参数: h || null,
token: m.token || "",
}),
e.index
.uploadFile({
url: "".concat(o.baseUrl).concat(a),
filePath: s,
name: c,
formData: h,
header: m,
})
.then(function (e) {
var n = e.statusCode,
o = e.data,
t = r.decrypt(JSON.parse(o).data),
a = t.code,
c = t.msg,
s = t.data;
return (
console.log("[请求结束] -- ", s, c, a),
200 === n && 0 === a
? Promise.resolve(s)
: Promise.reject({ msg: c })
);
})
.catch(function (e) {
return (
console.error("[请求报错] -- ", e),
l && r.showToast(e.msg ? e.msg : "上传失败,请重新上传"),
Promise.reject()
);
})
);
});