1. 程式人生 > >fetch新增超時時間只需幾行程式碼--fetch timeout

fetch新增超時時間只需幾行程式碼--fetch timeout

其實為fetch新增超時時間很簡單,需要用到Promise.race()方法.

Promise.race() 方法將多個Promise包裝成一個新的Promise例項.

var p = Promise.race([p1,p2,p3]);

上面的程式碼中,只要p1,p2,p3中有一個例項先改變狀態,p的狀態就跟著改變,而那個率先改變的Promise例項返回值就傳遞給p的回撥函式.

Promise.race方法的引數如果不是Promise例項,就會先先呼叫Promise.resolve方法,將引數轉為Promise例項,再進一步處理.

上完整例項程式碼:

Promise.race([
    fetch(URL),
new Promise(function(resolve,reject){ setTimeout(()=> reject(new Error('request timeout')),2000) })]) .then((data)=>{ //請求成功 }).catch(()=>{ //請求失敗 });

程式碼中用Promise.race()將fetch和一個新的Promise包裝在了一起,新的Promise和fetch誰率先返回就把該Promise例項返回值傳遞給下面的.then()或者是.catch()

程式碼裡我們新建的Promise例項裡設定了超時時間2000毫秒,如果超過2000毫秒fetch的請求還沒有結束,這時已經達到了新的Promise的超時時間,就會返回請求失敗,從而觸發catch方法裡指定的回撥函式.

親測有效,不清楚的可以在下面留言.

相關推薦

fetch新增超時時間程式碼--fetch timeout

其實為fetch新增超時時間很簡單,需要用到Promise.race()方法.Promise.race() 方法將多個Promise包裝成一個新的Promise例項.var p = Promise.race([p1,p2,p3]);上面的程式碼中,只要p1,p2,p3中有一個

利用ImageAI庫python程式碼超簡實現目標檢測

目錄 什麼是目標檢測 目標檢測演算法 Two Stages One Stage python實現 依賴 安裝 使用

JavaScript 程式碼,網頁瞬間有氣質了!

最近在網上閒逛,發現一個特別好玩的 JavaScript 庫,叫 RoughNotation。幹嘛用的呢?就是在網頁上給文字加標註,比如下劃線、方框、高亮文字背景等,不過是手寫風格的!截圖給大家感受下: ![手繪風格的標註](https://s1.ax1x.com/2020/06/29/NfuV8U.png)

Python究竟有多強?程式碼就能把微信玩“壞”!微信轟炸機

為此我失去了幾個好朋友了!哈哈哈 就是鬧著玩的,我和朋友對著轟炸自己!哈哈 這個梗能玩一晚上,馬上給大家上乾貨!還是非常實用的!   準備 Python3.6 需要安裝python3.6並配置好環境路徑 安裝好python後,開啟電腦的CMD終端輸入pip i

如何藉助ImageAI輕鬆實現目標檢測(程式碼)

知乎轉載https://www.zhihu.com/question/26483508/answer/447708695 只需10行Python程式碼,我們就能實現計算機視覺中目標檢測。 from imageai.Detection import

10程式碼就讓你的U盤變成純淨版winPE系統安裝啟動盤

相信許多人都喜歡用U盤安裝作業系統,攜帶使用方便,一U盤在手,天下我有。當然,使用U盤安裝系統的前提是你有一個U盤及U盤中已經安裝了winPE系統,雖然要經過這一步驟,但winPE一次裝好後基本可以使用到U盤報廢。那麼,如何製作U盤winPE啟動盤呢?通常情況下我們都會下載類

JavaScript開發區塊鏈200程式碼

JavaScript開發區塊鏈只需200行程式碼 用JavaScript開發實現一個簡單區塊鏈。通過這一開發過程,你將理解區塊鏈技術是什麼:區塊鏈就是一個分散式資料庫,儲存結構是一個不斷增長的連結串列,連結串列中包含著許多有序的記錄。 然而,在通常情況下,當我們談到區塊鏈的時候也會談起使用區

程式碼,就能爬取心中抖音美女的視訊!

今天刷抖音刷到了一個很漂亮的小姐姐,哇!那個美的呀,當場哈利子都差點掉下來了,像這種美好的視訊怎能不儲存下來?於是乎做了個小爬蟲,用以爬取小姐姐們的視訊了。現在分享給大家快樂快樂,嘿嘿嘿!   先來看看 效果圖  

Android省市縣三級聯動 真實專案抽出 呼叫3程式碼

專案原始碼:包含日期、省市縣兩種選擇器[資源積分:0分] ,APK安裝包下載,沒有CSDN賬戶的的點此下載原始碼 fastjson:自己複製部落格裡原始碼的小夥伴,注意匯入fastjson框架哦!阿里巴巴出品的最快json解析框架日期選擇器:效果圖中的選擇年月日的日

python機器人:基於圖靈的API開發,20程式碼

前言 想不想自己製作一個AI智慧機器人?在無聊的時候,陪你自己聊聊天,讓它給你講笑話,今天小編就為你量身打造一個智慧聊天機器人,

大神手把手教你寫一個頁面模板引擎,20Javascript代碼!

[1] 表達 最終 strong ice ali 開頭 syntax years 只用20行Javascript代碼就寫出一個頁面模板引擎的大神是AbsurdJS的作者,下面是他分享的全文,轉需。 不知道你有木有聽說過一個基於Javascript的Web頁面預處理器,叫做A

模擬拷貝文件動畫顯示編程中文文字即可完成

gif動畫 ref 講師 window cto color tro 拷貝文件 windows 模擬拷貝文件動畫顯示編程只需兩行中文文字即可完成,初學編程人員一看就會的編程。windows系統中復制文件時的那個GIF動畫,拷貝文件時顯示文件加的動畫。資料來源於 【王西猛講師的

鎖定窗口編程實例就是這麽簡單中文即可

term watermark ext ima -o 實例 中文編程 shadow .html 鎖定窗口編程實例就是這麽簡單只需三行中文即可,看後都會編寫。 進入 按鈕的程序代碼如下圖 這就是國內最出名的 中文編程,在學些復雜編程語言之前,可以先學學這個,主要學習編程思路。

如何將CAD圖紙轉換成彩色,步即可輕松搞定!

官網 -c 等待 輸出 href text RoCE 電腦桌 第一步 如何將CAD圖紙轉換成彩色,只需幾步即可輕松搞定!在日常的工作中,建築設計師們在編輯器完圖紙後,基本圖紙都是黑白的,這樣不利用我們更好的進行查看,那就需要將CAD圖紙的顏色進行轉換,如何將CAD圖紙轉換成

新增程式碼實現百度文庫的複製

百度文庫的限制複製簡直就是為知識的傳播設定了一堵圍牆,為了人類的進步今天我教大家用幾行程式碼實現百度文庫的複製功能。 以下以360瀏覽器為例,其他瀏覽器大同小異。 隨便開啟一篇百度文庫的文章,只要文章不是以圖片形式顯示的即可實現複製。 然後將滑鼠放到共享文件那裡會出現一個介紹共享文件的小

手機開鎖密碼忘了只能刷機?Python破解Android密碼20

  這幾天在作比賽,挺有意思的,聽說是給大一的孩子玩的,我們這幫老人就無恥地去參加了。。                學習Python中有不明白推薦加入交流群       &

5G網路明年商用:資費低於4G 每GB收費或毛錢

“90後”女大學生放棄北大保送復旦!她到底有多厲害?  東北網12月6日訊(記者 姜姍姍) 在東北農業大學有這樣一個自強不息的女大學生,她放棄北大直博被保送到復旦大學藥學院。她本科期間獲得國家獎學金、國家勵志獎學金、新東方自強獎學金、第一屆全國大學生生命聯賽國家二等獎……被評為黑龍江省“三好學生”。她就是生命

筆記本連結桌上型電腦的HDFS叢集

第一步: 第二步: 學會怎麼配置虛擬網路之後我們看一下這個配置檔案 hdfs-site.xml <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" h

勒索病毒100Python程式碼, 低調學習, 勿用非法!

本軟體只有短短100行,很顯然,製作一個實現批量加密功能的軟體在技術上非常容易,也就是說大多數有程式設計基礎的人都可有能力製作並傳播WANNACRY這樣的勒索軟體。然而企圖利用技術違法犯罪賺不義之財的敗類畢竟只是少數。勿起邪念! 我相信法網恢恢疏而不漏,犯罪分子一定難逃法律

10Python程式碼,就能實現計算機視覺中目標檢測

    只需10行Python程式碼,我們就能實現計算機視覺中目標檢測。     from imageai.Detection import ObjectDetection import os execution_path