提交代码
This commit is contained in:
128
utils/api.js
Normal file
128
utils/api.js
Normal file
@ -0,0 +1,128 @@
|
||||
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
|
||||
|
||||
};
|
||||
|
21
utils/envConfig.js
Normal file
21
utils/envConfig.js
Normal file
@ -0,0 +1,21 @@
|
||||
// 导出的环境请求地址
|
||||
//本地环境
|
||||
const dev = {
|
||||
ENV: "dev",
|
||||
VITE_BASE_API: "https://api.dev.dwoodauto.com/mobile/v1",
|
||||
};
|
||||
//正式环境
|
||||
const pro = {
|
||||
ENV: "pro",
|
||||
VITE_BASE_API: "https://api.dev.dwoodauto.com",
|
||||
};
|
||||
// //测试环境
|
||||
// const test = {
|
||||
// ENV: "test",
|
||||
// VITE_BASE_API: "https://api.dev.dwoodauto.com",
|
||||
// };
|
||||
export default {
|
||||
dev,
|
||||
// test,
|
||||
pro,
|
||||
};
|
9
utils/public.js
Normal file
9
utils/public.js
Normal file
@ -0,0 +1,9 @@
|
||||
//登录存储信息
|
||||
const setLoginData=function(obj){
|
||||
uni.setStorageSync("demu_mes_user_name",obj.mes_user_name);
|
||||
uni.setStorageSync("mes_token",obj.mes_token);
|
||||
}
|
||||
|
||||
export default {
|
||||
setLoginData
|
||||
};
|
Reference in New Issue
Block a user