2025-03-JS-SDK-PDA/common/MyRequest.js
2025-03-21 18:32:52 +08:00

126 lines
3.9 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//const baseurl = 'http://192.168.137.1:17878'
// const baseurl ='http://172.22.10.218:22202
// const baseurl = 'http://172.22.10.206:8096'
// const baseurl ='http://172.22.10.207:22202'
// const baseurl = 'http://172.22.54.217:17878' //ip连接
// const baseurl = 'http://172.22.10.218:22252' 8
// const baseurl = 'http://192.168.1.73:32202' // 测试环境
// const baseurl = 'http://172.22.10.217:22202' // 正式环境1
// const baseurl = 'http://172.22.10.225:22202' // SAP测试环境
const baseurl = 'http://localhost:18873'
//--------------------------------------------------开始封装
import service from './service';
export default function MyRequest(url='',data={},method='', loading = false) {
if(loading) {
uni.showLoading({
title: "加载中",
mask: true, // 显示透明蒙层,防止触摸穿透
});
}
let token;
// uni.getStorage({
// key: "token",
// success: function(res) {
// console.log(111,res)
// token = res.data; // 在这里赋值
// // 注意:这里赋值后,你可能需要在后续的逻辑中使用这个值,
// // 但由于这是异步的,你需要确保在赋值之后再使用这个值。
// },
// fail: function(err) {
// console.error('获取存储失败:', err);
// }
// });
token = uni.getStorageSync('token')
// console.log(33,service.getStorageExpires('utn'))
// if(service.getStorageExpires('utn')) {
// token = service.getStorageExpires('utn')
// service.setStorageExpires('utn', token, 30)
// // console.log('token',token)
// }else {
// service.getStorageExpires('token') && uni.removeStorageSync("token")
// const sysInfo = this.$mp.page?.route; // 'pages/login/index'
// console.log(2,sysInfo);
// console.log(2,sysInfo?.indexOf('login'));
// if(sysInfo?.indexOf('login') == -1) {
// uni.redirectTo({
// url: "/pages/login/index"
// })
// this.$showMessage('登录状态已过期,请重新登录')
// }
// }
// 注意:由于 uni.getStorage 是异步的,所以你不能立即在下一行使用 token 变量,
// 因为在那一刻它可能还没有被赋值。
console.log("Bearer " + token)
let myurl = baseurl + url; //把传入的url地址加上默认的请求地址拼接成真正的url地址
return new Promise((resolve, reject) => {
uni.request({
url: myurl, //请求的地址是拼接后的真正地址
method: method||'POST', //后端全部的方法都是Post
header: {
'Content-type': 'application/json;charset=utf-8',
'Authorization' : "Bearer " + token
}, //请求头会把数据转为Json格式
'timeout': 600000,
data:data,//调用此方法时的传进来的参数
success:(res)=>{
page_err(res.statusCode)
if (res.statusCode == "401") {
console.error("请求被拒绝")
uni.showModal("请求被拒绝");
uni.reLaunch({
url: '/pages/login/index'
})
}
resolve(res)//把数据返回出去
//console.log(res)
if(loading) {
uni.hideLoading()
}
},
fail:(err)=>{
reject(err)
if(loading) {
uni.hideLoading()
}
}
})
}
)
}
//请求错误
function page_err(err){
switch (err) {
case 401:
// 错误码404的处理方式
console.error("请求被拒绝")
uni.showModal("请求被拒绝");
uni.reLaunch({
url: '/pages/login/index'
})
break;
case 404:
// 错误码404的处理方式
uni.reLaunch({
url: '/pages/login/index'
})
uni.showModal("没有找到页面")
break;
case 405:
uni.showModal("错误的请求")
break;
default :
break;
}
}