js下载blob流文件
1.第一步,下载流文件
封装的下载流文件的方法,这里会返回一个XMLHttpRequest 对象
//封装的下载流文件的方法
function downloadBlobFile(_method,_url){
const request = new XMLHttpRequest() //
request.open(_method,_url) //这里替换
request.send()
request.responseType = 'blob' //请求流文件
return request
}
2.用downloadBlobFile()请求到Blob数据后进行下载
downloadBlobFile('get','https://fenli.6pian.cn/bgm/2021-08-12/9379牛片人声.mp3').onreadystatechange = res=>{
if(res.currentTarget.readyState == 4 && res.currentTarget.status==200){
const url = window.URL.createObjectURL(res.currentTarget.response);
let a = document.createElement('a')
a.href=url
a.download = '测试' //这个attr参数是必要的
a.click() //模拟点击进行下载
}
}