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

詳解基于 axios 的 Vue 項目 http 請求優(yōu)化

 更新時間:2017年09月04日 11:55:56   作者:氣象衛(wèi)星隨機號  
這篇文章主要介紹了詳解基于 axios 的 Vue 項目 http 請求優(yōu)化,非常具有實用價值,需要的朋友可以參考下

對于需要大量使用 http 請求的項目,我們通常會選擇對 http 請求的方法進行二次封裝,以便增加統(tǒng)一的攔截器,或者統(tǒng)一處理阻止重復提交之類的邏輯。Vue.js 的項目中我們選擇使用了 axios 這樣一個 http 庫,下面也就簡述下基于 axios 做的簡單二次封裝

依賴

首先引入 axios ,對于 ie9 這樣不支持 promise 的瀏覽器還需引入 es6-promise 模塊

require('es6-promise').polyfill();
var axios = require('axios');

axios 初始化

初始化我們要實現(xiàn)兩個需求:

1.發(fā)送請求時帶上 cookies

2.重發(fā)發(fā)送請求時,如果前一次相同請求還未結束則中止前一次請求

const httpServer = axios.create({
  responseType: 'json',
  withCredentials: true, // 設置 withCredentials 使請求帶上 `cookies`
  cancelToken: new axios.CancelToken(function (c) {
    cancel = c // 記錄當前請求的取消方法
  })
})

http 請求二次封裝

var promiseArr = {} // 用于記錄每個請求的取消方法

const gUtils = {
  getData: function () {
    let cancel
    const httpServer = axios.create({
      responseType: 'json',
      withCredentials: true, // 設置 withCredentials 使請求帶上 `cookies`
      cancelToken: new axios.CancelToken(function (c) {
        cancel = c // 記錄當前請求的取消方法
      })
    })
    
    // 設置一個攔截器,每次發(fā)起請求前取消掉在進行中的相同請求
    httpServer.interceptors.request.use(function (config) {
     if (promiseArr[config.url]) {
      promiseArr[config.url]('操作取消')
      promiseArr[config.url] = cancel
     } else {
      promiseArr[config.url] = cancel
     }
  
     return config
    }, function (err) {
     // return Promise.reject (error)
    })
  
    return httpServer
  }
}

這樣我們在對接服務時候直接使用我們封裝好的 http 請求方法即可

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 使用Vue3和Plotly.js繪制動態(tài)3D圖表的示例代碼

    使用Vue3和Plotly.js繪制動態(tài)3D圖表的示例代碼

    在數(shù)據(jù)可視化應用中,需要將數(shù)據(jù)動態(tài)加載到圖表中并進行實時更新,本文將展示如何使用Plotly.js和Vue.js實現(xiàn)這一功能,從加載外部數(shù)據(jù)到創(chuàng)建交互式圖表,文中有相關的代碼示例供大家參考,需要的朋友可以參考下
    2024-06-06
  • Vue+ElementUI使用vue-pdf實現(xiàn)預覽功能

    Vue+ElementUI使用vue-pdf實現(xiàn)預覽功能

    這篇文章主要為大家詳細介紹了Vue+ElementUI使用vue-pdf實現(xiàn)預覽功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • VUE的數(shù)據(jù)代理與事件詳解

    VUE的數(shù)據(jù)代理與事件詳解

    這篇文章主要為大家介紹了VUE的數(shù)據(jù)代理與事件,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • 解決Vue-cli3沒有vue.config.js文件夾及配置vue項目域名的問題

    解決Vue-cli3沒有vue.config.js文件夾及配置vue項目域名的問題

    這篇文章主要介紹了解決Vue-cli3沒有vue.config.js文件夾及配置vue項目域名的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • vant之關于van-list的使用以及一些坑的解決方案

    vant之關于van-list的使用以及一些坑的解決方案

    這篇文章主要介紹了vant之關于van-list的使用以及一些坑的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue3導入Elementplus時組件無法加載的情況及解決

    Vue3導入Elementplus時組件無法加載的情況及解決

    這篇文章主要介紹了Vue3導入Elementplus時組件無法加載的情況及解決方案,具有很好的參考價值,希望對大家有所幫助
    2024-03-03
  • 詳解Vue SPA項目優(yōu)化小記

    詳解Vue SPA項目優(yōu)化小記

    這篇文章主要介紹了詳解Vue SPA項目優(yōu)化小記,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 使用vue2.6實現(xiàn)抖音【時間輪盤】屏保效果附源碼

    使用vue2.6實現(xiàn)抖音【時間輪盤】屏保效果附源碼

    前段時間看抖音,有人用時間輪盤作為動態(tài)的桌面壁紙,一時間成為全網(wǎng)最火的電腦屏保,后來小米等運用市場也出現(xiàn)了【時間輪盤】,有點像五行八卦,感覺很好玩,于是突發(fā)奇想,自己寫一個網(wǎng)頁版小DEMO玩玩,需要的朋友可以參考下
    2019-04-04
  • Vue和原生JS中如何使用自定義字體

    Vue和原生JS中如何使用自定義字體

    這篇文章主要為大家詳細介紹了Vue和原生JS中如何使用自定義字體,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以了解下
    2024-01-01
  • vue實現(xiàn)畫筆回放canvas轉視頻播放功能

    vue實現(xiàn)畫筆回放canvas轉視頻播放功能

    這篇文章主要介紹了vue實現(xiàn)畫筆回放,canvas轉視頻播放功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-01-01

最新評論

寻乌县| 镇坪县| 定西市| 古丈县| 慈利县| 河北省| 上饶县| 通海县| 永康市| 萨迦县| 临武县| 汨罗市| 喀什市| 会理县| 类乌齐县| 垣曲县| 溧水县| 晋州市| 赞皇县| 莫力| 渝北区| 淅川县| 勐海县| 定安县| 伽师县| 汨罗市| 莆田市| 平潭县| 沾化县| 宣恩县| 庄浪县| 枣庄市| 桐乡市| 杭锦后旗| 滦平县| 南皮县| 广河县| 临桂县| 穆棱市| 石嘴山市| 克拉玛依市|