From 2fdfc944fbcd4e6553e79e70dee8ce88ef1805cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E5=BD=A6=E7=A5=96?= <605893810@qq.com> Date: Wed, 10 Sep 2025 00:01:18 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"feat:=20=E5=8A=A0=E8=BD=BD=E4=B8=AD?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E4=BF=AE=E6=94=B9"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 7a5f0ff2472723790458051acae728bc53ed30a3. --- static/common/loding.gif | Bin 58072 -> 0 bytes utils/request.js | 235 +++++++++++++++++---------------------- 2 files changed, 103 insertions(+), 132 deletions(-) delete mode 100644 static/common/loding.gif diff --git a/static/common/loding.gif b/static/common/loding.gif deleted file mode 100644 index ebd1bf4e2988496e5a769e94f58262993c9c1d2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58072 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%0DnX1Hqps&r+4# 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 w?C{}rFx1%d+ozo01yat{KtFzdyugna`0)ZiUf{ { - if (isShowLoading) { - // 请求之前做一些事:显示自定义GIF加载 - const loadingDiv = document.createElement("div"); - loadingDiv.id = "custom-loading"; - loadingDiv.style.cssText = ` - position: fixed; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - width: 300rpx; - height: 300rpx; - background: rgba(0, 0, 0, 0.3); - z-index: 9999; - border-radius: 16px; - `; - const img = new Image(); - img.src = "/static/common/loding.gif"; // 使用指定路径的GIF图片 - img.style.width = "80px"; // 调整GIF尺寸 - img.style.height = "80px"; - loadingDiv.appendChild(img); - document.body.appendChild(loadingDiv); - } - uni.request({ - url: BASE_URL + url, - method, - data, - header: { - ...defaultHeaders, - ...headers, // 使用展开运算符合并默认头和自定义头 - }, - success: (res) => { - if (isShowLoading) { - // 请求完成:隐藏自定义GIF加载 - const loadingDiv = document.getElementById("custom-loading"); - if (loadingDiv && document.body.contains(loadingDiv)) { - document.body.removeChild(loadingDiv); - } - } + // const token = uni.getStorageSync(tokenKey); // 获取token, 根据实际情况调整获取方式 + const token = getStorageFun(TOKEN_NAME); // 获取token, 根据实际情况调整获取方式 + let defaultHeaders = { + "Authorization": Authorization, + 'HSM-AUTH': token ? token : '', // 如果存在token, 则添加到请求头中 + 'content-type': ['post', 'POST'].includes(method) ? 'application/x-www-form-urlencoded' : 'application/json', + }; + if (options.cha) { + defaultHeaders['content-type'] = 'application/json' + } + if (token) { + defaultHeaders['HSM-AUTH'] = token; + } + return new Promise((resolve, reject) => { + if (isShowLoading) { + // 请求之前做一些事 + uni.showLoading({ + title: "加载中...", + }) + } + uni.request({ + url: BASE_URL + url, + method, + data, + header: { + ...defaultHeaders, + ...headers, // 使用展开运算符合并默认头和自定义头 + }, + success: (res) => { + if (isShowLoading) { + // 请求之前做一些事 + uni.hideLoading(); + } - let data = res.data; - if (data && typeof data === "string") { - data = JSON.parse(data); - } - if (data.status === 500) { - uni.showToast({ - title: "系统异常,请稍后再试", - icon: "none", // 可选 success/loading/none - duration: 2000, // 持续时长,单位ms - mask: false, // 是否显示透明蒙层,防止触摸穿透 - }); - return; - } - if (data.bizcode === 100) { - resolve(data); // 成功时返回数据 - } else if (data.bizcode === 201) { - if ([201, 200].includes(data.errcode)) { - uni.showToast({ - title: "登录失效,请重新登录", - icon: "none", // 可选 success/loading/none - duration: 2000, // 持续时长,单位ms - mask: false, // 是否显示透明蒙层,防止触摸穿透 - position: "middle", // 位置,可选 top/middle/bottom - }); - } else { - uni.showToast({ - title: data.msg, - icon: "none", // 可选 success/loading/none - duration: 2000, // 持续时长,单位ms - mask: false, // 是否显示透明蒙层,防止触摸穿透 - position: "middle", // 位置,可选 top/middle/bottom - }); - } - /** - * 205:已经有账号,返回登录页面 - * 200 or 201:token失效,返回登录页面 - */ - if ([201, 200, 205].includes(data.errcode)) { - setTimeout(() => { - uni.navigateTo({ - url: "/pages/login_package/login/login", - }); - }, 2000); - } - } else { - uni.showToast({ - title: data.msg || "系统错误,请稍后再试", - icon: "none", // 可选 success/loading/none - duration: 2000, // 持续时长,单位ms - }); - reject(data); // 其他错误情况返回错误信息 - } - }, - fail: (error) => { - if (isShowLoading) { - const loadingDiv = document.getElementById("custom-loading"); - if (loadingDiv && document.body.contains(loadingDiv)) { - document.body.removeChild(loadingDiv); - } - } - uni.showToast({ - title: "服务器异常,稍后再试", - icon: "none", // 可选 success/loading/none - duration: 2000, // 持续时长,单位ms - }); - // reject(error); // 请求失败时返回错误信息 - }, - }); - }); + let data = res.data; + if (data && typeof (data) === "string") { + data = JSON.parse(data); + } + if (data.status === 500) { + uni.showToast({ + title: "系统异常,请稍后再试", + icon: 'none', // 可选 success/loading/none + duration: 2000, // 持续时长,单位ms + mask: false, // 是否显示透明蒙层,防止触摸穿透 + }); + return; + } + if (data.bizcode === 100) { + resolve(data); // 成功时返回数据 + } else if (data.bizcode === 201) { + if ([201, 200].includes(data.errcode)) { + uni.showToast({ + title: '登录失效,请重新登录', + icon: 'none', // 可选 success/loading/none + duration: 2000, // 持续时长,单位ms + mask: false, // 是否显示透明蒙层,防止触摸穿透 + position: 'middle' // 位置,可选 top/middle/bottom + }); + } else { + uni.showToast({ + title: data.msg, + icon: 'none', // 可选 success/loading/none + duration: 2000, // 持续时长,单位ms + mask: false, // 是否显示透明蒙层,防止触摸穿透 + position: 'middle' // 位置,可选 top/middle/bottom + }); + } + /** + * 205:已经有账号,返回登录页面 + * 200 or 201:token失效,返回登录页面 + */ + if ([201, 200, 205].includes(data.errcode)) { + setTimeout(() => { + uni.navigateTo({ + url: '/pages/login_package/login/login' + }) + }, 2000); + } + } else { + uni.showToast({ + title: data.msg || "系统错误,请稍后再试", + icon: 'none', // 可选 success/loading/none + duration: 2000, // 持续时长,单位ms + }); + reject(data); // 其他错误情况返回错误信息 + } + }, + fail: (error) => { + if (isShowLoading) { + // 请求之前做一些事 + uni.hideLoading(); + } + uni.showToast({ + title: "服务器异常,稍后再试", + icon: 'none', // 可选 success/loading/none + duration: 2000, // 持续时长,单位ms + }); + // reject(error); // 请求失败时返回错误信息 + }, + }); + }); } export default request;