vue文件下载-blob

请求下载文件接口返回如下

 vue文件下载-blob_第1张图片

1将responseType设置为blob

2将接收的数据转为blob并进行操作

axios({
	url: url,
	method: 'GET',
	data: {},
	responseType:'blob',
	header: {
		'X-Requested-With': "XMLHttpRequest",
		"Content-Type":ContentType,
	},
}).then(res => {
    //type设置下载(格式)此处为.xlsx文件
	let blob = new Blob([res.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
	const href = URL.createObjectURL(blob) //创建新的URL表示指定的blob对象
	const a = document.createElement('a') //创建a标签
	a.style.display = 'none'
	a.href = href // 指定下载链接
	a.download = '下载用例' //指定下载文件名
	a.click() //触发下载
	URL.revokeObjectURL(a.href) //释放URL对象
})

3vue文件下载-blob_第2张图片

你可能感兴趣的:(vue.js,javascript,前端)