89 lines
3.1 KiB
JavaScript
89 lines
3.1 KiB
JavaScript
"use strict";
|
|
const common_vendor = require("../common/vendor.js");
|
|
const request_luchRequest_core_Request = require("./luch-request/core/Request.js");
|
|
const baseUrl = "http://192.168.1.168:5004";
|
|
new request_luchRequest_core_Request.Request({
|
|
baseURL: baseUrl,
|
|
timeout: 1e4,
|
|
header: {
|
|
// 'content-type': 'application/json',
|
|
"Authorization": "Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImxvZ2luX3VzZXJfa2V5IjoiNzQ5NGU2MzAtNTRlYS00ZTM5LWIxYjUtNzc2MzY5NTRhYmJmIn0.7l5CMwFitlpXniZ6PTR5DqN8ASFTFZ1DCUZKjOtr5CpuXWiPHeSW19nY8XKfGdxMvB7j-OnXuSznLRjx-N7K9g"
|
|
}
|
|
});
|
|
const AUTH_TOKEN = "Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImxvZ2luX3VzZXJfa2V5IjoiNTQyMjJlODYtZDUyNS00ZTA0LWI3Y2QtMGU1ZWYzYmIwM2EwIn0.x8zPXafDGVjIDIcAdWsWT3F2fU20QHVLFR15b251LfwpfRt_UaDo1-bvHEyi8hxqVkiStOqi09TTUTPBgjPYkw";
|
|
const isEmptyObject = (obj) => {
|
|
return Object.keys(obj).length === 0;
|
|
};
|
|
const objectToQueryString = (obj) => {
|
|
const keyValuePairs = [];
|
|
for (let key in obj) {
|
|
if (obj.hasOwnProperty(key)) {
|
|
keyValuePairs.push(encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]));
|
|
}
|
|
}
|
|
return keyValuePairs.join("&");
|
|
};
|
|
function showToast(title) {
|
|
common_vendor.index.showToast({
|
|
title,
|
|
icon: "none",
|
|
duration: 1e3
|
|
});
|
|
}
|
|
const requestAPI = (config) => {
|
|
let { url, method = "GET", data = {} } = typeof config === "object" && config.url ? config : { url: config, method: arguments[1] || "GET", data: arguments[2] || {} };
|
|
if (method == "GET" && !isEmptyObject(data)) {
|
|
url += "?" + objectToQueryString(data);
|
|
}
|
|
common_vendor.index.showLoading({
|
|
title: "加载中..."
|
|
});
|
|
return new Promise((resolve, reject) => {
|
|
common_vendor.index.request({
|
|
url: baseUrl + url,
|
|
method,
|
|
data,
|
|
header: {
|
|
"Authorization": AUTH_TOKEN
|
|
},
|
|
success: (res) => {
|
|
common_vendor.index.hideLoading();
|
|
if (res.statusCode !== 200) {
|
|
console.error("HTTP错误:", res.statusCode);
|
|
reject(`HTTP_${res.statusCode}`);
|
|
return;
|
|
}
|
|
if (res.data && res.data.code !== void 0) {
|
|
if (res.data.code === 200 || res.data.code === 0) {
|
|
resolve(res.data);
|
|
} else if (res.data.code === 401) {
|
|
common_vendor.index.removeStorageSync("_user_token_");
|
|
showToast("登录已过期,请重新登录");
|
|
reject("401");
|
|
} else {
|
|
showToast(res.data.msg || "请求失败");
|
|
reject(res.data.code);
|
|
}
|
|
} else {
|
|
resolve(res.data);
|
|
}
|
|
},
|
|
fail: (err) => {
|
|
console.error("网络请求失败:", err);
|
|
common_vendor.index.hideLoading();
|
|
if (err.errMsg && err.errMsg.includes("request:fail")) {
|
|
showToast("网络连接失败,请检查网络设置");
|
|
} else if (err.errMsg && err.errMsg.includes("timeout")) {
|
|
showToast("请求超时,请稍后重试");
|
|
} else {
|
|
showToast("网络异常,请稍后重试");
|
|
}
|
|
reject(err);
|
|
}
|
|
});
|
|
});
|
|
};
|
|
exports.AUTH_TOKEN = AUTH_TOKEN;
|
|
exports.baseUrl = baseUrl;
|
|
exports.requestAPI = requestAPI;
|