const BASEURL = 'https://www.baidu.com/'
uni.addInterceptor('request', {
invoke(args) {
},
success(args) {
},
fail(err) {
console.log('interceptor-fail',err)
},
complete(res) {
}
})
function createSerive (config) {
let reuest = new Promise((resolve, reject) => {
uni.request({
url: BASEURL + config.url,
header: config.header,
method: config.method,
data: JSON.stringify(config.data) !== "{}" ? config.data : config.params,
timeout: config.timeout,
dataType: config.dataType,
responseType: config.responseType,
success:(res) => {
if(res.data.code === 200) {
resolve(res.data.data)
} else {
uni.showToast({
title: res.data.msg,
icon: 'none',
duration: 2000
});
reject(res)
}
},
fail: () => {
reject()
},
complete: () => {
}
})
})
return reuest
}
function request (option) {
const optionDefault = {
header: {
'cookie': uni.getStorageSync('cookie'),
'X-Requested-With': 'XMLHttpRequest'
},
timeout: option.timeout ? option.timeout : 35000,
dataType: option.dataType ? option.dataType : 'json',
responseType: option.responseType ? option.responseType : 'text',
data: {}
}
return createSerive(Object.assign(optionDefault, option))
}
export default request