129 lines
4.9 KiB
JavaScript
129 lines
4.9 KiB
JavaScript
|
import config from './envConfig.js';
|
|||
|
import wf from './public.js'
|
|||
|
|
|||
|
const request = (url = '', data = {}, header = { //这里这样封装是为了后续具体组件中使用时可以直接传参,需按此顺序传参;而不需要写url:xxx等键值对传参
|
|||
|
//具体的header和后端商同后再编写,这里以常见的token为例
|
|||
|
'Authorization': 'Bearer '+uni.getStorageSync('mes_token') ? 'Bearer '+uni.getStorageSync('mes_token') : '',
|
|||
|
}) => {
|
|||
|
return new Promise((resolve, reject) => {
|
|||
|
// console.log(config,800)
|
|||
|
uni.request({
|
|||
|
url: config.dev.VITE_BASE_API + url, //接口地址:前缀+方法中传入的地址
|
|||
|
method: "POST", //请求方法
|
|||
|
dataType: "json",
|
|||
|
data: data, //传递参数
|
|||
|
header: header, //自定义头部,和后端商同后编写
|
|||
|
success: (res) => {
|
|||
|
// console.log('request.js文件的通用接口请求封装返回的结果数据',res);
|
|||
|
//注:因为这里对请求成功的没有统一设置抛错提示,所以后续具体组件中使用接口请求的res除200(实际以后端同事定好的为准)成功外的其他code需要额外写抛错提示
|
|||
|
if (res.data.code == 'xxx') { //自定请求失败的情况,这里以常见的token失效或过期为例
|
|||
|
uni.removeStorageSync('token');
|
|||
|
uni.showModal({
|
|||
|
showCancel: false,
|
|||
|
title: '温馨提示',
|
|||
|
content: res.data.msg,
|
|||
|
// header: {
|
|||
|
// "Token": 'Bearer ' + uni.getStorageSync("mes_token")
|
|||
|
// },
|
|||
|
success: function(result) {
|
|||
|
if (result.confirm) {
|
|||
|
// uni.reLaunch({
|
|||
|
// url: '/pages/login/index' //这里需用绝对路径才可
|
|||
|
// });
|
|||
|
}
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
if(res.header.Authorization){
|
|||
|
uni.removeStorageSync('mes_token');
|
|||
|
let obj = new Object();
|
|||
|
let str =String(res.header.Authorization)
|
|||
|
let newStr = str.slice(0, 0) + str.slice(7)
|
|||
|
obj.mes_token=newStr;
|
|||
|
uni.setStorageSync("mes_token",obj.mes_token);
|
|||
|
}
|
|||
|
|
|||
|
resolve(res.data) //成功
|
|||
|
},
|
|||
|
// 这里的接口请求,如果出现问题就输出接口请求失败的msg;
|
|||
|
//注:因为这里对于请求失败的设置统一抛错提示了,所以后续具体组件中使用接口请求的catch中不需要再写抛错提示
|
|||
|
fail: (err) => {
|
|||
|
uni.showToast({
|
|||
|
title: "" + err.msg,
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
reject(err)
|
|||
|
}
|
|||
|
})
|
|||
|
})
|
|||
|
}
|
|||
|
const postFuncLoading = (url = '', data = {}, header = { //这里这样封装是为了后续具体组件中使用时可以直接传参,需按此顺序传参;而不需要写url:xxx等键值对传参
|
|||
|
//具体的header和后端商同后再编写,这里以常见的token为例
|
|||
|
'Authorization': 'Bearer '+uni.getStorageSync('mes_token') ? 'Bearer '+uni.getStorageSync('mes_token') : '',
|
|||
|
}) => {
|
|||
|
uni.showLoading({
|
|||
|
title: '加载中',
|
|||
|
mask: true
|
|||
|
})
|
|||
|
return new Promise((resolve, reject) => {
|
|||
|
// console.log(config,800)
|
|||
|
uni.request({
|
|||
|
url: config.dev.VITE_BASE_API + url, //接口地址:前缀+方法中传入的地址
|
|||
|
method: "POST", //请求方法
|
|||
|
dataType: "json",
|
|||
|
data: data, //传递参数
|
|||
|
header: header, //自定义头部,和后端商同后编写
|
|||
|
success: (res) => {
|
|||
|
setTimeout(function () {
|
|||
|
uni.hideLoading();
|
|||
|
}, 200);
|
|||
|
// console.log('request.js文件的通用接口请求封装返回的结果数据',res);
|
|||
|
//注:因为这里对请求成功的没有统一设置抛错提示,所以后续具体组件中使用接口请求的res除200(实际以后端同事定好的为准)成功外的其他code需要额外写抛错提示
|
|||
|
if (res.data.code == 'xxx') { //自定请求失败的情况,这里以常见的token失效或过期为例
|
|||
|
uni.removeStorageSync('token');
|
|||
|
uni.showModal({
|
|||
|
showCancel: false,
|
|||
|
title: '温馨提示',
|
|||
|
content: res.data.msg,
|
|||
|
// header: {
|
|||
|
// "Token": 'Bearer ' + uni.getStorageSync("mes_token")
|
|||
|
// },
|
|||
|
success: function(result) {
|
|||
|
if (result.confirm) {
|
|||
|
// uni.reLaunch({
|
|||
|
// url: '/pages/login/index' //这里需用绝对路径才可
|
|||
|
// });
|
|||
|
}
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
if(res.header.Authorization){
|
|||
|
uni.removeStorageSync('mes_token');
|
|||
|
let obj = new Object();
|
|||
|
let str =String(res.header.Authorization)
|
|||
|
let newStr = str.slice(0, 0) + str.slice(7)
|
|||
|
obj.mes_token=newStr;
|
|||
|
uni.setStorageSync("mes_token",obj.mes_token);
|
|||
|
}
|
|||
|
|
|||
|
resolve(res.data) //成功
|
|||
|
},
|
|||
|
// 这里的接口请求,如果出现问题就输出接口请求失败的msg;
|
|||
|
//注:因为这里对于请求失败的设置统一抛错提示了,所以后续具体组件中使用接口请求的catch中不需要再写抛错提示
|
|||
|
fail: (err) => {
|
|||
|
uni.showToast({
|
|||
|
title: "" + err.msg,
|
|||
|
icon: 'none'
|
|||
|
});
|
|||
|
reject(err)
|
|||
|
}
|
|||
|
})
|
|||
|
})
|
|||
|
}
|
|||
|
export default {
|
|||
|
request,
|
|||
|
postFuncLoading
|
|||
|
|
|||
|
};
|
|||
|
|