国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

axios使用axiosSource.cancel取消請(qǐng)求后怎么恢復(fù)請(qǐng)求,axios取消請(qǐng)求和恢復(fù)請(qǐng)求實(shí)現(xiàn)

這篇具有很好參考價(jià)值的文章主要介紹了axios使用axiosSource.cancel取消請(qǐng)求后怎么恢復(fù)請(qǐng)求,axios取消請(qǐng)求和恢復(fù)請(qǐng)求實(shí)現(xiàn)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

在前端做大文件分片上傳,或者其它中斷請(qǐng)求時(shí),需要暫?;蛑匦抡?qǐng)求,比如這里大文件上傳時(shí),可能會(huì)需要暫停、繼續(xù)上傳,如下GIF演示:
axios使用axiosSource.cancel取消請(qǐng)求后怎么恢復(fù)請(qǐng)求,axios取消請(qǐng)求和恢復(fù)請(qǐng)求實(shí)現(xiàn),javascript,axios,前端

這里不詳細(xì)說文件上傳的處理和切片細(xì)節(jié),后續(xù)有時(shí)間在出一篇,大文件上傳,切片上傳、斷點(diǎn)續(xù)傳、秒傳等??。
不扯遠(yuǎn)了,緊接本篇主題??。

如何使用axios取消請(qǐng)求

axios中已經(jīng)實(shí)現(xiàn)了取消請(qǐng)求的操作,一共

  • 第一種 從 v0.22.0 開始,Axios 支持以 fetch API 方式—— AbortController 取消請(qǐng)求,示例如下
import axios from 'axios';
const controller = new AbortController();
let fetchSignal = controller.signal
axios.post('http://www.***.cn/', {
   signal: fetchSignal
}).then((response)=> {
   //...
});

// 取消請(qǐng)求,不支持message參數(shù)
controller.abort()
  • 第二種使用CancelToken.source工廠方法創(chuàng)建一個(gè) cancel token ,如下所示:
import axios from 'axios';
let axiosSource = axios.CancelToken.source();
	
axios({
  method: 'post',
  url: 'http://www.***.cn/',
  data: formdata,// 提交的文件數(shù)據(jù)或其它參數(shù)
  cancelToken: axiosSource.token,
  headers: { 'Content-Type': 'multipart/form-data' },
}).then((response)=> {
    //...
});

// 取消請(qǐng)求,支持message參數(shù)
axiosSource.cancel('取消請(qǐng)求');
  • 第三種 通過傳遞一個(gè)executor函數(shù)到CancelToken的構(gòu)造函數(shù)來創(chuàng)建一個(gè) cancel token,這里就不介紹了,可以查看官網(wǎng)示例??。

本文采用第二種方式實(shí)現(xiàn)。

如何重新發(fā)送請(qǐng)求

在重新發(fā)送請(qǐng)求前,需要重新生成CancelToken.source,不然再也無法從該URL獲得成功的響應(yīng),因?yàn)橥粋€(gè)CancelToken.source都會(huì)被取消請(qǐng)求,如下圖打印結(jié)果:
axios使用axiosSource.cancel取消請(qǐng)求后怎么恢復(fù)請(qǐng)求,axios取消請(qǐng)求和恢復(fù)請(qǐng)求實(shí)現(xiàn),javascript,axios,前端

所以在重新請(qǐng)求前,需要重新生成一個(gè)CancelToken.source,代碼如下:

// 重新發(fā)送請(qǐng)求
axiosSource = axios.CancelToken.source();
axios({
//....代碼同上
})

最后在放上axios官網(wǎng)的說明及實(shí)例鏈接 點(diǎn)我直達(dá)
如果本文對(duì)您有幫助,還請(qǐng)點(diǎn)個(gè)小贊??。
本文完~文章來源地址http://www.zghlxwxcb.cn/news/detail-655095.html

到了這里,關(guān)于axios使用axiosSource.cancel取消請(qǐng)求后怎么恢復(fù)請(qǐng)求,axios取消請(qǐng)求和恢復(fù)請(qǐng)求實(shí)現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • axios取消請(qǐng)求CancelToken的用法

    axios中取消請(qǐng)求情況分為1:取消該請(qǐng)求之后的相同請(qǐng)求;2:取消該請(qǐng)求之前的相同請(qǐng)求 ##取消該請(qǐng)求之后的相同請(qǐng)求: 在使用 axios 發(fā)送請(qǐng)求時(shí),如果在短時(shí)間內(nèi)連續(xù)發(fā)送同一個(gè)請(qǐng)求,可能會(huì)出現(xiàn)請(qǐng)求結(jié)果混亂或重復(fù)響應(yīng)的問題。為了避免這種情況,我們可以使用 axios 的取消

    2024年02月14日
    瀏覽(16)
  • axios如何取消請(qǐng)求,其原理是什么?

    原文合集地址如下,有需要的朋友可以關(guān)注 本文地址 axios 可以通過創(chuàng)建一個(gè) CancelToken 來取消一個(gè)請(qǐng)求,基本原理是: 創(chuàng)建一個(gè) CancelToken 的實(shí)例,它有一個(gè) executor 函數(shù),可以通過調(diào)用 executor 參數(shù)中的 cancel 函數(shù)來取消請(qǐng)求。 在 axios 請(qǐng)求配置中指定 cancelToken 屬性,將 CancelToken 實(shí)例

    2024年02月12日
    瀏覽(20)
  • 封裝axios請(qǐng)求重試和路由切換時(shí)請(qǐng)求取消

    封裝axios請(qǐng)求重試和路由切換時(shí)請(qǐng)求取消

    請(qǐng)求重試函數(shù):這里注意兩個(gè)變量__retryCount 和retry分別代表當(dāng)前次數(shù)和重試次數(shù)。如果請(qǐng)求中沒有配置retry則正常進(jìn)行不會(huì)進(jìn)行重試。 請(qǐng)求取消我這里的場(chǎng)景是路由切換時(shí),將上次路由全部取消也可以配置部分取消。注意變量noCancel,他來控制那些不需要被取消。 回顧axios請(qǐng)

    2024年02月21日
    瀏覽(26)
  • 簡(jiǎn)單易懂:Axios 如何取消請(qǐng)求的兩種方法

    簡(jiǎn)單易懂:Axios 如何取消請(qǐng)求的兩種方法

    在前端開發(fā)中,網(wǎng)絡(luò)請(qǐng)求是非常常見的操作。而有時(shí)候,我們可能需要在發(fā)送請(qǐng)求后取消它,比如用戶在請(qǐng)求還未完成時(shí)離開了當(dāng)前頁(yè)面或者執(zhí)行了其他操作,本文將介紹如何在使用 Axios 發(fā)送請(qǐng)求時(shí)取消這些請(qǐng)求。 在 Axios 中,取消請(qǐng)求的基本思路是創(chuàng)建一個(gè)用于取消的標(biāo)記

    2024年01月19日
    瀏覽(20)
  • vue2/3 axios 請(qǐng)求重試、取消請(qǐng)求、loading 串行并行等(分享)

    基礎(chǔ)版,添加 loading 在請(qǐng)求響應(yīng)攔截器里面添加 loading,這樣就不需要給每一個(gè)請(qǐng)求添加 loading 了 這些代碼都是 vue2 項(xiàng)目的,vue3 也通用,改一下 loading 和 message 就好了(主要是 element 的區(qū)別) 我這里最后沒有合并代碼,有的配置不適合寫在一起,看自己項(xiàng)目的需要 響應(yīng)狀態(tài)

    2024年02月10日
    瀏覽(24)
  • axios全局封裝取消請(qǐng)求,你可以創(chuàng)建一個(gè) Axios 實(shí)例,并為該實(shí)例配置默認(rèn)的 CancelToken

    可以在你的應(yīng)用中使用這個(gè)封裝過的 Axios 實(shí)例,并通過調(diào)用 instance.cancelAll() 方法來取消所有未完成的請(qǐng)求。

    2024年02月04日
    瀏覽(24)
  • 在 VUE 項(xiàng)目中,使用 Axios 請(qǐng)求數(shù)據(jù)時(shí),提示跨域,該怎么解決?

    在 VUE 項(xiàng)目中,使用 Axios 請(qǐng)求數(shù)據(jù)時(shí),提示跨域,該怎么解決?

    在 VUE 項(xiàng)目開發(fā)時(shí),遇到個(gè)問題,正常設(shè)置使用 Axios 庫(kù)請(qǐng)求數(shù)據(jù)時(shí),報(bào)錯(cuò)提示跨域問題。 那在生產(chǎn)壞境下,該去怎么解決呢? 其可以通過以下幾種方式去嘗試解決: 例如,如果您的源地址是 http://localhost:8080 ,則可以設(shè)置如下響應(yīng)頭: 在上面代碼中,使用 Express.js 創(chuàng)建簡(jiǎn)單

    2024年04月17日
    瀏覽(23)
  • .NET Core使用 CancellationToken 取消API請(qǐng)求

    .NET Core使用 CancellationToken 取消API請(qǐng)求

    您是否曾經(jīng)訪問過一個(gè)網(wǎng)站,它需要很長(zhǎng)時(shí)間加載,最終你敲擊 F5 重新加載頁(yè)面。 即使用戶刷新了瀏覽器取消了原始請(qǐng)求,而對(duì)于服務(wù)器來說,API也不會(huì)知道它正在計(jì)算的值將在結(jié)束時(shí)被丟棄,刷新五次,服務(wù)器將觸發(fā) 5 個(gè)請(qǐng)求。 為了解決這個(gè)問題,ASP.NET Core 為 Web 服務(wù)器

    2024年03月17日
    瀏覽(17)
  • vue3【使用axios并封裝axios請(qǐng)求】

    vue3【使用axios并封裝axios請(qǐng)求】

    第一步:安裝axios 第二步:編寫請(qǐng)求文件 新建request.js 簡(jiǎn)單的axios封裝,里面相關(guān)提示信息,自己可以引入element-plus去添加

    2024年02月04日
    瀏覽(88)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包