Files
pad-nl-three-uni/utils/request.js
2025-04-17 15:46:32 +08:00

99 lines
2.4 KiB
JavaScript

// import qs from 'qs' // 处理data
import store from '@/vuex/store'
const request = (params) => {
let _self = this;
let url = params.url;
let method = params.method || 'POST';
let data = params.data || {};
let token = ''
if (store.getters.saveToken !== '') {
token = store.getters.saveToken
}
let defaultOpot = {
// 'Content-Type': 'application/x-www-form-urlencoded',
'Terminal-Type': 'innerH5',
'Content-Type': 'application/json;charset=UTF-8',
}
let header = {}
method = method.toUpperCase()
if (method == 'POST') {
header = {
'Content-Type': 'application/json;charset=UTF-8',
'Authorization': token
}
// data = qs.stringify(data)
}
const requestUrl = `${store.getters.baseUrl}/` + url;
let type = params.type
if (type === 1) {
uni.showLoading({
mask: true,
title: '正在推送,如未审核成功,请查看单据审核结果信息。'
});
} else {
uni.showLoading({
mask: true,
title: '加载中...'
});
}
return new Promise((resolve, reject) => {
uni.request({
url: requestUrl,
method: method,
header: Object.assign({}, defaultOpot, header),
data: data,
dataType: 'json',
})
.then(res => { // 成功
if (res.length === 1) {
uni.hideLoading();
uni.showModal({
content: 'request:fail',
confirmColor: '#fff',
showCancel: false
})
reject('request:fail')
} else if (res[1] && res[1].statusCode === 400) {
uni.hideLoading();
uni.showModal({
content: `${res[1].data.message}`,
confirmColor: '#fff',
showCancel: false
})
reject(res[1].data.message)
} else if (res[1] && res[1].statusCode === 401) {
uni.hideLoading();
uni.showModal({
content: `${res[1].data.message}`,
confirmColor: '#fff',
showCancel: false
})
// store.dispatch('delUserInfo', '')
// uni.redirectTo({
// url: '/pages/login/login'
// })
} else if (res[1] && res[1].statusCode === 200) {
uni.hideLoading();
let {
data: dataType
} = res[1]
resolve(dataType)
}else {
uni.hideLoading();
uni.showModal({
content: `${res[1].data.message}`,
confirmColor: '#fff',
showCancel: false
})
reject(res[1].data.message)
}
})
.catch(err => { // 错误
reject(err)
})
.finally(() => {
// uni.hideLoading();
})
})
}
export default request