vue 后台接口返回文件流地址的下載


向后台請求文件 返回的是這種文件流

  

如何下載

  首先在axios.post的請求中把默認的 " responseType:‘json’ " 改為" responseType:‘blob’ 

然后

  

let blob = new Blob([res.data], {type: "application/vnd.ms-excel"});  // res就是接口返回的文件流了
          let objectUrl = URL.createObjectURL(blob); 
          window.location.href = objectUrl;
 

如果是圖片或者視頻什么的 把type類型傳成下面的樣子

let blob = new Blob([res2.data], { type: res2.data.type }); const url = window.URL || window.webkitURL || window.moxURL; _this.urls = url.createObjectURL(blob);

  

  

得注意blob里的這個type,要根據你們的需要更換文件類型啊,可以參考一下這個 https://www.cnblogs.com/yjmBlogs/p/9493726.html , 我需要導出的是列表數據,所以選的是’application/vnd.ms-excel’,就會導出.xls的文件來,你們根據需求換啊

原文鏈接:https://blog.csdn.net/liujiaojiao666/article/details/100563088


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM