axios下载文件代码详情
                
        
                
        Vue
                
        2022-04-20 10:18:07
            
文件的下载在网站中非常常见,本文就在vue中如何使用axios实现下载操作代码详解。
代码如下:
1、引入axios插件,关于该插件的下载请自行百度。
import axios from 'axios'2、页面中使用axios实现下载
axios({
  // 用axios发送post请求
  method: 'post',
  url: '', // 请求地址
  responseType: 'blob', // 表明返回服务器返回的数据类型
  headers: {
    'token': ''
  },
  data:{}//请求携带的参数
}).then(res => {
  // 处理返回的文件流
  const content = res.data
  const blob = new Blob([content])
  const fileName = '导出的文件名称.xls'
  if ('download' in document.createElement('a')) {
    // 非IE下载
    const elink = document.createElement('a')
    elink.download = fileName
    elink.style.display = 'none'
    elink.href = URL.createObjectURL(blob)
    document.body.appendChild(elink)
    elink.click()
    URL.revokeObjectURL(elink.href) // 释放URL 对象
    document.body.removeChild(elink)
  } else {
    // IE10+下载
    navigator.msSaveBlob(blob, fileName)
  }
})3、根据自己需求进行参数的携带及header的设置。
说明:通过该方法进行文件的下载,效果和常规的a标签点击下载一致。
4、该方式和常规a标签下载的优势如下:
4.1、实现了header的配置,如设置token
4.2、不再局限于只能用get方法
4.3、参数的携带更加方便
		    
		        六月初字帖坊小程序 
		    
		     你想要的字帖模板及工具,这里都有! 
		
				899篇文章
				2562人已阅读
			
			
			
		
				        
六月初