一、创建WxResquest类
// 通过类的方式来进行封装,会让代码更具有复用性,也可以方便添加新的属性和方法
class WxResquest{
// 定义实例属性,用来设置默认请求参数
defaults={
baseURL:'',//请求基准地址
url:'',//接口的请求路径
data:null,//请求参数
method:'GET',//默认的请求方法
//请求头
header:{
'Content-type':'application/json'//设置数据的交互格式
},
timeout:60000//默认的超时时长,小程序默认的超时时长是1分钟
}
// 定义拦截器对象
// 需要包含请求拦截器以及响应拦截器,方便在请求之前以及响应以后时进行逻辑处理
interceptors={
// 请求拦截器
// request方法,在请求发送之前,对请求参数进行新增或修改
request:(config) => config,
// 响应拦截器
// response方法,在服务器响应数据以后,对响应的数据进行逻辑处理
reponse:(response) => response
}
// 用于创建和初始化类的属性以及方法
// 在实例化时传入的参数,会被constructor形参进行接收
constructor(params={}){
// 通过Object.assign方法合并请求参数
// 注意:需要传入的参数,覆盖默认的参数,因此传入的参数需要放到最后
this.defaults = Object.assign({},this.defaults,params)
}
// request实例方法接收一个对象类型的参数,属性