110 lines
3.3 KiB
JavaScript
110 lines
3.3 KiB
JavaScript
"use strict";
|
||
const common_vendor = require("../common/vendor.js");
|
||
const base_url = "http://192.168.2.22:8081/opeapi";
|
||
const media_base_url = "https://www.focusnu.com/media/upFiles/";
|
||
const timeout = 5e3;
|
||
const request = (params) => {
|
||
let url = params.url;
|
||
let method = params.method || "get";
|
||
let data = params.data || {};
|
||
let header = {
|
||
"X-Access-Token": common_vendor.index.getStorageSync("token") || "",
|
||
"Content-Type": "application/json;charset=UTF-8",
|
||
"Authorization": "Basic c2FiZXI6c2FiZXJfc2VjcmV0",
|
||
...params.header
|
||
};
|
||
const get401Count = () => {
|
||
const v = common_vendor.index.getStorageSync("auth401Count");
|
||
return Number.isInteger(v) ? v : 0;
|
||
};
|
||
const set401Count = (n) => {
|
||
common_vendor.index.setStorageSync("auth401Count", n);
|
||
};
|
||
const reset401Count = () => {
|
||
common_vendor.index.removeStorageSync("auth401Count");
|
||
};
|
||
return new Promise((resolve, reject) => {
|
||
common_vendor.index.request({
|
||
url: base_url + url,
|
||
method,
|
||
header,
|
||
data,
|
||
timeout,
|
||
success(response) {
|
||
const res = response;
|
||
if (res.statusCode == 200) {
|
||
reset401Count();
|
||
resolve(res.data);
|
||
} else {
|
||
if (res.statusCode !== 401) {
|
||
reset401Count();
|
||
}
|
||
switch (res.statusCode) {
|
||
case 401: {
|
||
let count = get401Count() || 0;
|
||
count = count + 1;
|
||
set401Count(count);
|
||
if (count < 3) {
|
||
common_vendor.index.clearStorageSync();
|
||
common_vendor.index.reLaunch({
|
||
url: "/pages/login/callback"
|
||
});
|
||
} else {
|
||
common_vendor.index.showModal({
|
||
title: "登录异常",
|
||
content: "检测到多次未授权访问(401),请重新登录。",
|
||
confirmText: "去登录",
|
||
cancelText: "取消",
|
||
success(resModal) {
|
||
if (resModal.confirm) {
|
||
common_vendor.index.clearStorageSync();
|
||
common_vendor.index.reLaunch({
|
||
url: "/pages/login/callback"
|
||
});
|
||
}
|
||
}
|
||
});
|
||
}
|
||
break;
|
||
}
|
||
case 404:
|
||
common_vendor.index.showToast({
|
||
title: "请求地址不存在...",
|
||
icon: "error",
|
||
duration: 2e3
|
||
});
|
||
break;
|
||
default:
|
||
common_vendor.index.showToast({
|
||
title: "请重试...",
|
||
icon: "error",
|
||
duration: 2e3
|
||
});
|
||
break;
|
||
}
|
||
reject(res);
|
||
}
|
||
},
|
||
fail(err) {
|
||
if (err && err.errMsg && err.errMsg.indexOf("request:fail") !== -1) {
|
||
common_vendor.index.showToast({
|
||
title: "网络异常",
|
||
icon: "error",
|
||
duration: 2e3
|
||
});
|
||
} else {
|
||
common_vendor.index.showToast({
|
||
title: "未知异常",
|
||
duration: 2e3
|
||
});
|
||
}
|
||
reject(err);
|
||
}
|
||
});
|
||
});
|
||
};
|
||
exports.base_url = base_url;
|
||
exports.media_base_url = media_base_url;
|
||
exports.request = request;
|
||
//# sourceMappingURL=../../.sourcemap/mp-weixin/request/index.js.map
|