小程序版结合promise的axios风格ajax请求函数。
建议的小程序版本的axios函数,之所以说简易,因为只是用了常用的请求方法外,然后添加了拦截器而已。
具体如下:
下载,安装
npm i cdd-lib
使用
es6:
import {wxhttp} from 'cdd-lib'commonjs:
let {wxhttp} = require('cdd-lib')wxhttp
命名为wxhttp
具体的请求用法如axios
wxhttp#request(config)
wxhttp#get(url[,config])
wxhttp#delete(url[,config])
wxhttp#head(url[,config])
wxhttp#options(url[,config])
wxhttp#post(url[,data[,config]])
wxhttp#put(url[,data[,config]])
wxhttp#patch(url[,data[,config]])
拦截方法:
- 请求拦截
wxhttp.interceptors.request.use(handleRequest(config),handleError(err))
注意:handleRequest需要返回处理后的config
- 返回拦截
wxhttp.interceptors.response.use(handresponse(res))
注意:handleResponse需要返回处理后的res
例子:
import $http from "../../utils/http"
export default {
name: 'seckillHome',
data() {
return {
}
},
onShow() {
// 请求拦截
$http.interceptors.request.use(function (config) {
console.log(`请求拦截`, config)
// 此处设置的数据将与请求的数据进行合并,如果自动同名则以拦截的为准。
config.data = {
address: "北京市东城区"
}
return config
})
$http.post('https://www.baidu.com', {
name: 'cdd',
age: 23
}).then(res => {
console.log(`结果是`, res)
})
}
}因为使用了promise风格,所以可以使用Promise.all方法来进行并发请求。
查看源码
相关推荐
88254251 2020-11-01
MarukoMa 2020-09-02
88234852 2020-09-15
陈旭阳 2020-08-31
whynotgonow 2020-08-19
前端开发Kingcean 2020-07-30
whynotgonow 2020-07-29
bowean 2020-07-08
前端开发Kingcean 2020-07-08
88520191 2020-07-05
前端开发Kingcean 2020-06-27
88481456 2020-06-18
whynotgonow 2020-06-16
88520191 2020-06-13
88520191 2020-06-13
89500297 2020-06-13