Vue取消Axios發(fā)出的請(qǐng)求
一、前言
有的時(shí)候我們需要取消axios發(fā)出的請(qǐng)求,例如在退出頁(yè)面時(shí),取消掉仍然在進(jìn)行的請(qǐng)求。
二、AbortController
從 v0.22.0 開始,Axios 支持以 fetch API 方式—— AbortController 取消請(qǐng)求:
const controller = new AbortController(); axios.get('/foo/bar', { signal: controller.signal }).then(function(response) { //... }); // 取消請(qǐng)求 controller.abort()
注意這里在發(fā)送請(qǐng)求時(shí),額外攜帶了一個(gè)signal參數(shù):
signal: controller.signal
這是AbortController實(shí)例(controller.abort()
)去取消請(qǐng)求的標(biāo)記。
三、CancelToken
您還可以使用 cancel token 取消一個(gè)請(qǐng)求。
- Axios 的 cancel token API 是基于被撤銷 cancelable promises proposal。
- 此 API 從 v0.22.0 開始已被棄用,不應(yīng)在新項(xiàng)目中使用。
可以使用 CancelToken.source 工廠方法創(chuàng)建一個(gè) cancel token ,如下所示:
const CancelToken = axios.CancelToken; const source = CancelToken.source(); axios.get('/user/12345', { cancelToken: source.token }).catch(function (thrown) { if (axios.isCancel(thrown)) { console.log('Request canceled', thrown.message); } else { // 處理錯(cuò)誤 } }); axios.post('/user/12345', { name: 'new name' }, { cancelToken: source.token }) // 取消請(qǐng)求(message 參數(shù)是可選的) source.cancel('Operation canceled by the user.');
到此這篇關(guān)于Vue取消Axios發(fā)出的請(qǐng)求的文章就介紹到這了,更多相關(guān)Vue Axios內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vue項(xiàng)目及axios請(qǐng)求獲取數(shù)據(jù)方式
- Vue?axios庫(kù)發(fā)送請(qǐng)求的示例介紹
- vue?axios中的get請(qǐng)求方式
- Vue使用axios發(fā)送請(qǐng)求并實(shí)現(xiàn)簡(jiǎn)單封裝的示例詳解
- vue結(jié)合axios實(shí)現(xiàn)restful風(fēng)格的四種請(qǐng)求方式
- Vue3如何使用axios發(fā)起網(wǎng)絡(luò)請(qǐng)求
- Vue使用axios添加請(qǐng)求頭方式
- vue中數(shù)據(jù)請(qǐng)求axios的封裝和使用
相關(guān)文章
vue實(shí)現(xiàn)購(gòu)物車全部功能的簡(jiǎn)單方法
vue是前端輕量級(jí)MVVM框架,入門門檻相對(duì)較低,今天用Vue做一個(gè)購(gòu)物車實(shí)例,所以下面這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)購(gòu)物車全部功能的簡(jiǎn)單方法,需要的朋友可以參考下2021-07-07Vue動(dòng)態(tài)面包屑功能的實(shí)現(xiàn)方法
面包屑功能是我們?cè)陧?xiàng)目中經(jīng)常遇到的功能,今天小編使用Element-UI 進(jìn)行實(shí)現(xiàn)在vue項(xiàng)目中實(shí)現(xiàn)面包屑功能,具體實(shí)現(xiàn)方式大家跟隨小編一起學(xué)習(xí)吧2019-07-07Vue使用axios發(fā)送請(qǐng)求并實(shí)現(xiàn)簡(jiǎn)單封裝的示例詳解
這篇文章主要介紹了Vue使用axios發(fā)送請(qǐng)求并實(shí)現(xiàn)簡(jiǎn)單封裝,主要包括安裝axios及簡(jiǎn)單使用配置方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06關(guān)于ElementPlus中的表單驗(yàn)證規(guī)則詳解
這篇文章主要介紹了關(guān)于ElementPlus中的表單驗(yàn)證,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06Vue draggable實(shí)現(xiàn)從左到右拖拽功能
這篇文章主要為大家詳細(xì)介紹了Vue draggable實(shí)現(xiàn)從左到右拖拽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04vue+vue-meta-info動(dòng)態(tài)設(shè)置meta標(biāo)簽教程
這篇文章主要介紹了vue+vue-meta-info動(dòng)態(tài)設(shè)置meta標(biāo)簽教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04