case-data/utils/request.js
2025-04-11 10:49:39 +08:00

120 lines
3.4 KiB
JavaScript

/**
* @Method Description
* @Author: zjd@
* @Description: 数据请求整合 处理
* @BASE_URL server
* @param {a===Object||file} 传给后台参数Method 请求方法 url 所请求的接口路径
* @return Promise对象 所有数据信息
* @createTime: 2024-7-22 15:05:06
*/
import BASE_URL from "./config.js";
//import host from "@/utils/host";
//import {msg} from "./util.js"
import pageUrl from './pageUrl'
//alert(BASE_URL)
//const BASE_URL=host+"/api"
export const request = (url, data = {}, method = 'post',loading = false,contentType='application/x-www-form-urlencoded') => {
if(loading){
uni.showLoading({
title: '加载中',
mask:true
})
};
uni.setStorageSync('DEV_AUTH_TOKEN_FIGURE','eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiMTgzMzQzMjEwMTI3ODQ1Mzc2MCIsImV4cCI6MTc0MzEzMTY2OCwibmJmIjoxNzQyODcyNDY4LCJpYXQiOjE3NDI4NzI0Njh9.RGsdwvwck8oDNbStbMA18i5VOmy9JbK68hLNILDGUMQ');
let token='';
if(process.env.NODE_ENV === 'development'){
token = uni.getStorageSync('DEV_AUTH_TOKEN_FIGURE');
}else{
token = uni.getStorageSync('AUTH_TOKEN_FIGURE');
}
// if(!token){
// let freeList=['/login','/code/phone','/login/wx','/index','/user/check'];
// if(freeList.indexOf(url) == -1){
// let page_url=pageUrl();
// if(page_url.indexOf('/login/login')==-1){
// uni.setStorageSync('redirectUrl',page_url);
// uni.navigateTo({
// url: '/pages/login/login?redirectUrl=has'
// });
// return false;
// }else{
// uni.setStorageSync('redirectUrl','');
// uni.navigateTo({
// url: '/pages/login/login'
// });
// return false;
// }
// }
// }
let header = {
'content-type':contentType ,
'Authorization': 'Bearer ' + token
}
return new Promise(function(e, n) {
let timestamp = Date.now();
uni.request({
data,
url: url.indexOf('http')!=-1?url:encodeURI(BASE_URL+url+"?timestamp="+timestamp),
method: method,
sslVerify:false,
header:url.indexOf('/manager/getSignature4bing')==-1?header:{},
timeout:10000,
success: function(res) {
var Authorization_token = res.header.Authorization;
if(Authorization_token){
if(process.env.NODE_ENV === 'development'){
uni.setStorageSync('DEV_AUTH_TOKEN_FIGURE', Authorization_token);
}else{
uni.setStorageSync('AUTH_TOKEN_FIGURE', Authorization_token);
}
}
if(loading){
uni.hideLoading();
};
if(res.data.code==200){
e(res)
}else if(res.data.code==401 || res.data.code==403 || res.data.code==405 || res.data.code==406){
var u=navigator.userAgent;
let isApp=Boolean(u.match(/Gdxz/ig));
if(isApp){
uni.navigateTo({
url: '/pages/index/index'
});
}else{
let freeList=['/login','/code/phone','/login/wx','/index','/user/check'];
if(freeList.indexOf(url) == -1){
let page_url=pageUrl();
uni.setStorageSync('redirectUrl',page_url);
uni.navigateTo({
url: '/pages/login/login?redirectUrl=has'
});
return false
}
}
}else if(res.data.code==500){
n(res)
}else{
uni.showToast({
title:res.data.message,
icon:'none',
})
n(res)
}
},
fail: function(err) {
"request:fail " === err.errMsg && msg("请求数据失败!"), n(err.data);
}
});
});
}