使用Promise封装axios请求和uni.request请求

通过new Promise 封装Axios/uni.request请求
为了方便前端开发者更加简单便捷的请求后端数据,特封装几种请求方式,希望对大家有所帮助

1,通过new Promise封装axiso请求,代码如下
// post请求
export const post = (url,data) => {
	return new Promise((resolve,reject)=>{
		axios.post(url,data).then(res=>{
			resolve(res)
		}).catch(err=>{
			reject(err)
		})
	})
}
// get请求
export const get = (url) => {
	return new Promise((resolve,reject)=>{
		axios.get(url).then(res=>{
			resolve(res)
		}).catch((err=>{
			reject(err)
		}))
	})
}

2.通过new Promise封装uni.request请求
let BASE_URL = ''  // 接口固定地址
export const request = (options) => {
	return new Promise((resolve,reject)=>{
		uni.request({
			url: BASE_URL + options.url,
			method: options.method || 'GET',
			data: options.data || {},
			success:(res)=>{
				resolve(res)
			},
			fail:(err)=>{
				uni.showToast({
					title:err.message,
					icon:'none'
				})
				reject(err)
			}
		})
	})
}

3,封装一个常规axiso请求 不通过promise封装
// post 请求
export function postAction(url,parameter) {
  return axios({
    url: url,
    method:'post' ,
    data: parameter
  })
}
// get 请求
export function getAction(url,parameter) {
  return axios({
    url: url,
    method: 'get',
    params: parameter
  })
}

你可能感兴趣的:(前端js,vue.js,前端,javascript)