五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

TypeScript封裝一個(gè)Axios,HTTP狀態(tài)碼

2022-12-07 03:08 作者:Yang_Lee  | 我要投稿

好習(xí)慣不能丟,先上成果

思路:

  1. 引入axios

  2. 實(shí)例化一個(gè)axios起名request

  3. 為request配置請(qǐng)求和響應(yīng)的攔截器

  4. 請(qǐng)求攔截器中:為請(qǐng)求頭帶上json web token(也有用cookie的,看后端),并開啟加載動(dòng)畫

  5. 響應(yīng)攔截器中:無論成功還是失敗先關(guān)閉加載動(dòng)畫、判斷響應(yīng)status是否為200,若是則返回data,反之,彈出消息提示并中斷promise

  6. 用async函數(shù)再包一層、實(shí)現(xiàn)自定義泛型為請(qǐng)求結(jié)果聲明類型

  7. 導(dǎo)出包裝后的async函數(shù)

坑:

  • 上面那個(gè)是為Vue3項(xiàng)目封裝的,React項(xiàng)目不能直接拿去用

  • 請(qǐng)求過程的加載動(dòng)畫和請(qǐng)求失敗的消息提示依賴于element-plus

  • 響應(yīng)攔截器中對(duì)于HTTP的status判斷過于簡(jiǎn)單粗暴,實(shí)際上status在200~299之間都算成功

  • 如果status為200,響應(yīng)結(jié)果會(huì)自動(dòng)解包為data不需在then中手動(dòng)再解

  • 不支持get、postputdelete等別名調(diào)用

  • 加載動(dòng)畫是需要真實(shí)DOM的,在DOM掛載前就發(fā)起請(qǐng)求可能會(huì)出現(xiàn)問題

HTTP狀態(tài)碼:

  • 1xx:服務(wù)端收到客戶端的請(qǐng)求,但還需要客戶端下一步動(dòng)作

  • 2xx:通俗的說,就是成功了

  • 3xx:需要重定向

  • 4xx:客戶端有問題,比如404客戶端的請(qǐng)求找不到對(duì)應(yīng)資源,401客戶端未攜帶正確的tokencookie認(rèn)證信息

  • 5xx:服務(wù)器報(bào)錯(cuò),出現(xiàn)這個(gè)找后端就完了,一般不是前端的鍋


TypeScript封裝一個(gè)Axios,HTTP狀態(tài)碼的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
措美县| 柯坪县| 云梦县| 商河县| 石嘴山市| 女性| 枣庄市| 余庆县| 清镇市| 玉林市| 蕲春县| 招远市| 伊宁市| 普宁市| 万年县| 岢岚县| 革吉县| 江山市| 江北区| 上犹县| 武川县| 保山市| 徐汇区| 湾仔区| 东兰县| 三江| 昌江| 大悟县| 平陆县| 响水县| 上饶市| 肥东县| 江陵县| 枣庄市| 宁安市| 尉氏县| 白城市| 天祝| 湖北省| 永顺县| 铜陵市|