封装axios以及flyio

最近在研究封装axios的请求,最近整理出来两个封装,以及小程序的flyio请求的封装,基本上拿上来就能用话不多少进入正题

第一种axios的封装

拦截器什么的不用多写了  网上很常见的

首先项目要有基本的路径配置就是axios的baseURLs

 const baseURLs = '  '    (这里写你的项目的基本路径)

然后配置所有的请求头

axios.defaults.baseURL = baseURLs    (就是这样引用的 )

如果有请求头的问题的话,一般的话建议让后台添加一个那个字段,然后一般请求头就可以带上token

首先说一下第一种封装


封装的登录接口

以我这边的登录接口为例

export const checkLogin = (confing) => {

    return axios.post('/login', confing).then(res => res.data)

}

使用方式为


这里的(括号里面写你上传的对象)

如果你传入的对象为自己定义的对象的话方式为checkLogin (  { id: 2  } ).then(res=>{})

这里会自动解构出来

然后说一下第二种封装


这种可能看起来没有第一种那么的方便

这里的responseType可以不写,这个是导出excel的时候要用到的,基本的请求不用去写

使用方式的话跟上一种一样

 Excel({ ids: arr }).then(res => {})

这种封装方法基本上都是大同小异,只要你理解了,基本上都不难




下面说一下flyio的封装其原理跟axios类似

这边flyio的封装没有使用请求头的方式


基本上就是前缀加请求

然后进行二次封装


这里是使用方法,如果你不会axios的封装的话,建议先会用axios的封装以后再使用这个

调用的时候我是进行了处理,但是方式和axios是相同的


这边是调用方式

最后希望大家调用的时候多用用es7的async简直不要太好用


大概就是这样子了



代码都是写出来的,多写才有更多的心得体会;

你可能感兴趣的:(封装axios以及flyio)