download(response) {
if(!response) {
return
}
const blob = new Blob([response])
const downloadElement = document.createElement('a')
const href = window.URL.createObjectURL(blob)
downloadElement.href = href
downloadElement.download = '文件.zip'
document.body.appendChild(downloadElement)
downloadElement.click()
document.body.removeChild(downloadElement) // 下载完成移除元素
window.URL.revokeObjectURL(href) // 释放掉blob对象
},
saveFile(data) {
axios({
method: 'post',
url: 'http://10.10.177.40:5000/Report/Create',
data: data,
// responseType: 'blob',
})
.then(({ data: res }) => {
if (res.code) {
console.log('返回的json', res)
this.$message.error(res.message)
} else {
this.download(res)
// const data = res
// const blob = new Blob([data])
// const blobUrl = window.URL.createObjectURL(blob)
// this.download(blobUrl)
}
/* let fileList = JSON.parse(JSON.stringify(this.fileList))
if (res.data.code == 1) {
fileList.map((file) => {
file.url = res.data.data
file.status = 'done'
})
this.$message.success('上传成功')
} else {
fileList.map((file) => {
file.status = 'error'
})
this.$message.error(res.data.message)
}
this.fileList = fileList */
})
.catch((err) => {
/* let fileList = JSON.parse(JSON.stringify(this.fileList))
fileList.map((file) => {
file.status = 'error'
})
this.fileList = fileList
this.$message.error('服务器内部错误') */
})
.finally(() => {
this.loading = false
})
},
后端返回二进制文件流,前端如何下载文件
最新推荐文章于 2024-05-07 21:04:48 发布