小程序原生封装axios
const baseURL = 'http://quanzhan.site:3000'
const request = ({url, data, header = {}, method = 'GET'} = {}) => {
return new Promise((resolve, reject) => {
wx.request({
url: baseURL + url,
data,
header: {
...header,
'X-Token': 'token string.............',
},
timeout: 5000,
method,
success: res => {
if (res.statusCode === 200) {
const {code, data} = res.data
if (code === 200) {
resolve(data)
return
}
}
const error = new Error('接口访问有误')
reject(error)
},
fail: err => {
reject(err)
},
})
})
}
module.exports = request
使用
onLoad: async function (options) {
try {
let [cateData,homeData] =await Promise.allSettled([
request({ url:'/api/tabs'}),
request({ url:'/api/tab/1'})
])
this.setData({
categories:cateData.value.list,
banners:homeData.value.banners,
productList:homeData.value.items.list
})
} catch (error) {
console.error(error)
}
uniapp -axios二次封装
const baseURL = 'http://quanzhan.site:3000'
const request = ({url, method = 'GET', data, header = {}} ={}) => {
return new Promise((resolve, reject) => {
uni.request({
url: baseURL + url,
method,
data,
header: {
...header,
'X-Token': 'token string...........',
},
success: res => {
if (res.statusCode === 200) {
const { code, data, message } = res.data
if (code === 200) {
resolve(data)
return
}
const error = new Error(message)
reject(error)
}
},
fail: err => {
reject(err)
},
})
})
}
export default request