axios.get('/url', {
responseType: 'arraybuffer',
headers:
{
'Content-Type': 'multipart/form-data;charset=UTF-8', //定义请求媒体的类型
'Authorization': 'Bearer ' + sessionStorage.getItem('headers_token') //认证或授权
},
params: {
//入参信息
Flag: flag,
fileName: name,
filePath: url
}
}).then((res) => {
res.data.code && http.goLogin(res.data.code)
var blob = new Blob([res.data])
var downloadElement = document.createElement('a');
var href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = name; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
})
前端处理后台接口返回的文件流,实现文件下载功能
最新推荐文章于 2024-08-02 11:41:26 发布