最近在研究封裝axios的請(qǐng)求履肃,最近整理出來(lái)兩個(gè)封裝竿痰,以及小程序的flyio請(qǐng)求的封裝霎终,基本上拿上來(lái)就能用話不多少進(jìn)入正題
第一種axios的封裝
攔截器什么的不用多寫了? 網(wǎng)上很常見(jiàn)的
首先項(xiàng)目要有基本的路徑配置就是axios的baseURLs
?const?baseURLs = '? '? ? (這里寫你的項(xiàng)目的基本路徑)
然后配置所有的請(qǐng)求頭
axios.defaults.baseURL?=?baseURLs? ? (就是這樣引用的 )
如果有請(qǐng)求頭的問(wèn)題的話备典,一般的話建議讓后臺(tái)添加一個(gè)那個(gè)字段,然后一般請(qǐng)求頭就可以帶上token
首先說(shuō)一下第一種封裝
以我這邊的登錄接口為例
export?const?checkLogin?=?(confing)?=>?{
????return?axios.post('/login',?confing).then(res?=>?res.data)
}
使用方式為
如果你傳入的對(duì)象為自己定義的對(duì)象的話方式為checkLogin (? { id: 2? } ).then(res=>{})
這里會(huì)自動(dòng)解構(gòu)出來(lái)
然后說(shuō)一下第二種封裝
這里的responseType可以不寫艰赞,這個(gè)是導(dǎo)出excel的時(shí)候要用到的佣谐,基本的請(qǐng)求不用去寫
使用方式的話跟上一種一樣
?Excel({?ids:?arr?}).then(res?=>?{})
這種封裝方法基本上都是大同小異,只要你理解了方妖,基本上都不難
下面說(shuō)一下flyio的封裝其原理跟axios類似
這邊f(xié)lyio的封裝沒(méi)有使用請(qǐng)求頭的方式
然后進(jìn)行二次封裝
調(diào)用的時(shí)候我是進(jìn)行了處理党觅,但是方式和axios是相同的
最后希望大家調(diào)用的時(shí)候多用用es7的async簡(jiǎn)直不要太好用