最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

封裝一下vue中的axios示例代碼詳解

 更新時間:2020年02月16日 10:09:06   作者:表示不會  
這篇文章主要介紹了封裝一下vue中的axios,本文通過示例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下

在vue項目中,和后臺交互獲取數(shù)據(jù)這塊,我們通常使用的是axios庫,它是基于promise的http庫,可運行在瀏覽器端和node.js中。他有很多優(yōu)秀的特性,例如攔截請求和響應(yīng)、取消請求、轉(zhuǎn)換json、客戶端防御cSRF等。所以我們的尤大大也是果斷放棄了對其官方庫vue-resource的維護(hù),直接推薦我們使用axios庫。如果還對axios不了解的,可以移步axios文檔。

安裝

npm install axios; // 安裝axios

好了,下面開始今天的正文。

此次封裝用以解決: (對于登錄功能的可以直接使用,其他網(wǎng)絡(luò)請求也可以直接用,如果有潔癖,可以把token有關(guān)的幾行代碼刪掉)

ps:使用時得的引入axios時: import axios from '這個文件的名字及相對路徑'

  • 接受后臺token
  • post參數(shù)自動轉(zhuǎn)換,省略qs.stringify()
  • 后臺token過期之后自動清除本地數(shù)據(jù),以便下次再次輸入賬號密碼
  • 更好的錯誤提示信息
/**
 * 封裝網(wǎng)絡(luò)請求
 */
import axios from "axios"
import qs from "querystring"
import store from '../store'
import router from '../router'
//token過期之后重新回登錄界面
const toLogin = () =>{
 router.push("/login")
}
// 錯誤信息響應(yīng)方法
const errroHandle = (status,other) => {
 switch(status){
  case 400:
   console.log("服務(wù)器無法理解請求信息");
   break;
  case 401:
   console.log("用戶信息驗證失敗");
   localStorage.removeItem("token"); // 可選項
   toLogin();
   break;
  case 403:
   console.log("請求被限制");
   localStorage.removeItem("token"); // 可選項
   toLogin();
   break;
  case 404:
   console.log("客戶端請求信息錯誤");
   break;
  default:
   console.log(other);
   break;
 }
}
// 創(chuàng)建axios對象
const instance = axios.create({
 timeout:5000
})
// 掛在全局對象
instance.defaults.baseUrl = "";
instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
// 攔截器:請求攔截和響應(yīng)攔截 post請求參數(shù)需要轉(zhuǎn)碼
// axios的返回值對象要求是一個promise對象
instance.interceptors.request.use(config =>{
 if(config.method === "post"){
  config.data = qs.stringify(config.data)
 }
 if(store.state.token){
  config.headers.authorization = store.state.token;
 }
 return config;
},error => Promise.reject(error))
instance.interceptors.response.use(
 // 成功
 response => response.status === 200 ? Promise.resolve(response) :Promise.reject(response),
 // 失敗
 error => {
  const { response } = error;
  if(response){
   errroHandle(response.status,response.data)
   return Promise.reject(response)
  }else{
   // 錯誤信息都無法返回
   console.log("請求被中斷");
  }
 }
)
export default instance

總結(jié)

以上所述是小編給大家介紹的封裝一下vue中的axios示例代碼詳解,希望對大家有所幫助!

相關(guān)文章

  • 基于Vue實現(xiàn)本地消息隊列MQ的示例詳解

    基于Vue實現(xiàn)本地消息隊列MQ的示例詳解

    這篇文章為大家詳細(xì)主要介紹了如何基于Vue實現(xiàn)本地消息隊列MQ, 讓消息延遲消費或者做緩存,文中的示例代碼講解詳細(xì),需要的可以參考一下
    2024-02-02
  • 通過一個簡單的例子學(xué)會vuex與模塊化

    通過一個簡單的例子學(xué)會vuex與模塊化

    這篇文章主要給大家介紹了關(guān)于如何通過一個簡單的例子學(xué)會vuex與模塊化的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • vue 監(jiān)聽 Treeselect 選擇項的改變操作

    vue 監(jiān)聽 Treeselect 選擇項的改變操作

    這篇文章主要介紹了vue 監(jiān)聽 Treeselect 選擇項的改變操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue中路由的前進(jìn)和后退問題

    vue中路由的前進(jìn)和后退問題

    這篇文章主要介紹了vue中路由的前進(jìn)和后退問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue自定義多選組件使用詳解

    Vue自定義多選組件使用詳解

    這篇文章主要為大家詳細(xì)介紹了Vue自定義多選組件的使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • vue加載動畫element ui V-loading屬性的踩坑記錄

    vue加載動畫element ui V-loading屬性的踩坑記錄

    這篇文章主要介紹了vue加載動畫element ui V-loading屬性方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue之全局水印的實現(xiàn)示例

    Vue之全局水印的實現(xiàn)示例

    頁面水印大家或許都不陌生,本文主要介紹了Vue之全局水印的實現(xiàn)示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • vue?過濾、模糊查詢及計算屬性?computed詳解

    vue?過濾、模糊查詢及計算屬性?computed詳解

    計算屬性是vue里面為了簡化在模板語法中對響應(yīng)式屬性做計算而存在的,這篇文章主要介紹了vue?過濾、模糊查詢(計算屬性?computed),需要的朋友可以參考下
    2022-11-11
  • 詳解vue項目打包步驟

    詳解vue項目打包步驟

    這篇文章主要介紹了vue項目打包步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Vue 使用typescript如何優(yōu)雅的調(diào)用swagger API

    Vue 使用typescript如何優(yōu)雅的調(diào)用swagger API

    這篇文章主要介紹了Vue 使用typescript如何優(yōu)雅的調(diào)用swagger API,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09

最新評論

木里| 鄱阳县| 台山市| 邢台县| 徐汇区| 阿克陶县| 巴林左旗| 长子县| 土默特右旗| 邢台市| 平泉县| 府谷县| 唐海县| 皋兰县| 昭平县| 塔河县| 辉县市| 大渡口区| 宝鸡市| 渭南市| 铁力市| 山阳县| 湘潭县| 五家渠市| 兰州市| 绥棱县| 咸宁市| 通化市| 罗田县| 延寿县| 吴川市| 湖南省| 正镶白旗| 来宾市| 望谟县| 内黄县| 西林县| 永济市| 桦甸市| 巴彦县| 弋阳县|