-
創(chuàng)建項(xiàng)目配置選項(xiàng)
查看全部 -
創(chuàng)建vue項(xiàng)目:vue create axios-vue(項(xiàng)目名)
上下切換條目,空格選擇
查看全部 -
查詢vue-cli版本:命令vue-V
安裝vue-cli腳手架:npm install -g @vue/cli
查看全部 -
實(shí)例的相關(guān)配置
axios全局配置:axios.defaults.timeout=1000
axios.defaults.baseURL=''
axios實(shí)例配置
let instance = axios.create()
instance.defaults.timeout=3000
axios? ?請求配置 優(yōu)先級(jí)最高
instance.get('/data.json',{timeout:5000})
查看全部 -
并發(fā)請求:同時(shí)進(jìn)行多個(gè)請求,并統(tǒng)一處理返回值
axios.all([ ])
axios.spread
查看全部 -
delete有兩種情況:一是放在URL,二是在請求體中,需要跟后端溝通好
查看全部 -
form-data請求(圖片上傳,文件上傳)
application/json請求
查看全部 -
請求攔截器
axios.interceptorss.request.use (config?=>?{ ?//?do?something?before?sending?request ?return?config },?err?=>?{ ?//?在請求錯(cuò)誤的時(shí)候做些什么 ?return?Promise.reject(err) })
查看全部 -
axios三種配置的優(yōu)先級(jí):
全局配置 < 實(shí)例配置 < 請求配置
查看全部 -
axios的幾種配置:
axios全局配置:通常全局配置就是baseURL和timeout兩項(xiàng)
axios實(shí)例配置
axios請求配置
查看全部 -
params vs. data:
params, 請求參數(shù)拼接在url;?
data, 請求參數(shù)放在請求體
查看全部 -
headers:?{ ????token:?'' }
查看全部 -
實(shí)戰(zhàn)(聯(lián)系人列表增刪改查功能)
一、安裝vant組件庫(https://youzan.github.io/vant/#/zh-CN/,它是移動(dòng)端組件庫,我們可以在快熟上手這一欄,找到安裝的教程)
1、安裝vant組件庫
2、引入組件庫(方式一:通過插件方式自動(dòng)按需要進(jìn)行自動(dòng)引入,例如:import {Button}?from 'vant',這種方式不需要引入樣式,方式二:手動(dòng)按需要引入,此種方式需要引入樣式。方式三:導(dǎo)入所有組件,不推薦,導(dǎo)致項(xiàng)目壓縮包變大,請求變慢),有點(diǎn)類似于element-ui
3、注冊組件
查看全部 -
取消請求
使用場景:取消正在進(jìn)行的http請求(僅作了解、aioxs的這個(gè)功能)
使用方法:
聲明取消請求:CancelToken相當(dāng)于對象,source()相當(dāng)于方法,這樣會(huì)生成一個(gè)Source對象,這個(gè)Source對象里有一個(gè)token,然后再發(fā)送請求時(shí),將token傳入第二個(gè)參數(shù)里。當(dāng)要取消請求時(shí),需要編寫catch方法,正常請求成功會(huì)走then方法,取消請求時(shí)走catch方法。此時(shí)僅是聲明了取消請求的動(dòng)作,但不會(huì)觸發(fā)。
觸發(fā)取消請求:通過Source對象的cancel方法。該方法有一個(gè)Message參數(shù),而這個(gè)參數(shù)就會(huì)進(jìn)入上面的catch()的err參數(shù)中。注意這個(gè)Message參數(shù)是可選的。如果不寫則直接取消請求。
查看全部 -
攔截器
請求攔截器使用場景:在請求被處理前攔截,做一些操作(例如:登錄狀態(tài),通常登錄成功后,后端會(huì)返回一個(gè)token,這個(gè)token會(huì)存儲(chǔ)一些信息,這樣前端每次發(fā)請求時(shí)帶token才可以訪問一些資源)。
請求攔截器使用方法(use方法有兩個(gè)參數(shù),第一個(gè)是請求前的回調(diào)函數(shù),請求配置,也就是在發(fā)送請求前做一些操作。第二個(gè)是請求錯(cuò)誤的回調(diào)函數(shù))
拓展:promise有兩個(gè)函數(shù)一個(gè)是reslove函數(shù),一般成功時(shí)用,reject一般失敗錯(cuò)誤時(shí)用。
使用場景:在響應(yīng)被處理前攔截,做一些操作。
響應(yīng)攔截器使用方法:(use方法有兩個(gè)參數(shù),第一個(gè)是請求前的回調(diào)函數(shù),請求配置,也就是在發(fā)送請求前做一些操作。第二個(gè)是請求錯(cuò)誤的回調(diào)函數(shù))
拓展:axios.get().then(res=>{})中的then相當(dāng)于發(fā)送請求成功后的回調(diào)函數(shù),而axios.get().catch(err=>{})相當(dāng)于請求成功,對響應(yīng)失敗的處理,也就是reject的err會(huì)觸發(fā)catch方法。
請求錯(cuò)誤和響應(yīng)錯(cuò)誤區(qū)別:請求錯(cuò)誤表示請求沒有到達(dá)后端,瀏覽器會(huì)報(bào)一些錯(cuò)誤,比如請求接口沒有,就會(huì)報(bào)404。例如:從數(shù)據(jù)庫查詢某一條記錄,但是沒有,后臺(tái)返回一個(gè)狀態(tài)碼和錯(cuò)誤信息,此時(shí)就是響應(yīng)錯(cuò)誤(請求到達(dá)后端,返回錯(cuò)誤稱為響應(yīng)錯(cuò)誤。沒到達(dá)后端,成為請求錯(cuò)誤)。
取消攔截器使用方法
使用場景:對攔截器進(jìn)行取消。
拓展:一般使用攔截器時(shí),都是聲明一個(gè)變量,給實(shí)例添加攔截器,給實(shí)例添加屬性,一般不會(huì)給axios添加內(nèi)容,避免造成全局污染。
拓展:當(dāng)在請求攔截器中,對headers的屬性進(jìn)行賦值時(shí),通常使用config.headers.token='',而不是config.headers={token:‘’},因?yàn)榈诙N方式會(huì)把headers里的其他屬性覆蓋掉。
不同axios實(shí)例訪問不同接口,不同axios實(shí)例有不同攔截器,從而實(shí)現(xiàn)有需要攔截,有不需要攔截的。
請求攔截器其他使用場景:比如某一個(gè)請求,可能需要幾秒,此時(shí)我們可以通過請求攔截器添加一個(gè)頁面的等待的樣式,等數(shù)據(jù)響應(yīng)回來時(shí)再取消這個(gè)樣式。
查看全部
舉報(bào)