欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于axios 的responseType類型的設(shè)置方法

 更新時(shí)間:2019年10月29日 09:38:09   作者:zhusf  
今天小編就為大家分享一篇基于axios 的responseType類型的設(shè)置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

responseType值的類型可為如下

axios請求下載導(dǎo)出一個(gè)文件,請求成功時(shí)返回的是一個(gè)流形式的文件,需要設(shè)置responseType: 'arraybuffer',但是請求失敗的需要返回的是json數(shù)據(jù),

所以需要把a(bǔ)rraybuffer轉(zhuǎn)成Json對(duì)象。

例:

請求設(shè)置了responseType: 'arraybuffer',

請求成功時(shí),下載文件,

請求失敗時(shí),后端返回json對(duì)象,如:{"msg":"系統(tǒng)異常","code":1,"success":false},也被轉(zhuǎn)成了arraybuffer

我的解決方案是,失敗時(shí),將數(shù)據(jù)arraybuffer轉(zhuǎn)成Json對(duì)象就好了。

舉個(gè)例:

api.downloadFile(params).then(res => {    
  if (res.status === 200 && res.data) {     
      var disposition = res.headers['content-disposition']    
      var fileName = decodeURI(disposition.substring(disposition.indexOf('filename=') + 9, disposition.length))<br>      let blob = new Blob([res.data], { type: 'application/pdf' }) // 假設(shè)文件為pdf
     let link = document.createElement('a')
     link.href = window.URL.createObjectURL(blob)
     link.download = fileName
     link.click()
     link.remove()
   } else {      // 其它情況
   }
  }).catch(err => {     <br>    var enc = new TextDecoder('utf-8')
    var res = JSON.parse(enc.decode(new Uint8Array(err.data))) //轉(zhuǎn)化成json對(duì)象
    console.log(res)
  }
)

以上這篇基于axios 的responseType類型的設(shè)置方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一篇文章教你簡單使用Vue的watch偵聽器

    一篇文章教你簡單使用Vue的watch偵聽器

    這篇文章主要為大家介紹了Vue watch偵聽器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • axios 封裝上傳文件的請求方法

    axios 封裝上傳文件的請求方法

    今天小編就為大家分享一篇axios 封裝上傳文件的請求方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • mpvue構(gòu)建小程序的方法(步驟+地址)

    mpvue構(gòu)建小程序的方法(步驟+地址)

    mpvue是一個(gè)使用Vue.js開發(fā)小程序的前端框架??蚣芑?Vue.js 核心,這篇文章主要介紹了mpvue構(gòu)建小程序的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • Vue v-for循環(huán)之@click點(diǎn)擊事件獲取元素示例

    Vue v-for循環(huán)之@click點(diǎn)擊事件獲取元素示例

    今天小編就為大家分享一篇Vue v-for循環(huán)之@click點(diǎn)擊事件獲取元素示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 淺談vue+vite項(xiàng)目部署會(huì)遇到的幾個(gè)問題

    淺談vue+vite項(xiàng)目部署會(huì)遇到的幾個(gè)問題

    本文主要介紹了vue+vite項(xiàng)目部署會(huì)遇到的幾個(gè)問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • vue點(diǎn)擊自增和求和的實(shí)例代碼

    vue點(diǎn)擊自增和求和的實(shí)例代碼

    今天小編就為大家分享一篇vue點(diǎn)擊自增和求和的實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • webpack4+express+mongodb+vue實(shí)現(xiàn)增刪改查的示例

    webpack4+express+mongodb+vue實(shí)現(xiàn)增刪改查的示例

    這篇文章主要介紹了webpack4+express+mongodb+vue 實(shí)現(xiàn)增刪改查的示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-11-11
  • vue項(xiàng)目打包后請求地址錯(cuò)誤/打包后跨域操作

    vue項(xiàng)目打包后請求地址錯(cuò)誤/打包后跨域操作

    這篇文章主要介紹了vue項(xiàng)目打包后請求地址錯(cuò)誤/打包后跨域操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Vue2+Element-ui實(shí)現(xiàn)el-table表格自適應(yīng)高度的案例

    Vue2+Element-ui實(shí)現(xiàn)el-table表格自適應(yīng)高度的案例

    這篇文章主要介紹了Vue2+Element-ui實(shí)現(xiàn)el-table表格自適應(yīng)高度的案例,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • Vue2如何支持composition API示例詳解

    Vue2如何支持composition API示例詳解

    這篇文章主要為大家介紹了Vue2如何支持composition API示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01

最新評(píng)論