1、在浏览器上下个油猴(扩展程序)。
2、搜百度网盘下载助手。
3、找到下载地址复制到迅雷中进行下载。二进制文件,其用途依系统或应用而定。一种文件格式binary的缩写。一个后缀名为".bin"的文件,只是表明它是binary格式。比如虚拟光驱文件常用".bin"作为后缀,但并不意味着所有的bin文件都是虚拟光驱文件。一般来讲是机器代码,汇编语言编译后的结果(磁盘 *** 作系统下汇编语言编译后与".com"文件相类似),用debug、WINHEX,U_EDIT等软件可以打开(通常不一定能看得懂是些什么除非学习过汇编语言)。
下载文件打开的方法onDownload(){
download(params).then(res =>{
//注意:如果res是二进制流字符串而不是blob,则需要通过new Blob([res])转化成blob
var downloadElement = document.createElement('a')
var href = window.URL.createObjectURL(res)//创建下载的链接
downloadElement.href = href
downloadElement.download = '文件名'//下载后文件名
document.body.appendChild(downloadElement)
downloadElement.style.display = 'none'
downloadElement.click()//点击下载
document.body.removeChild(downloadElement)//下载完成移除元素
window.URL.revokeObjectURL(href)//释放掉blob对象
})
}
还有一步非常重要!!!在请求接口时要设置responseType为blob
export const download = (params) =>{
return axios.post(url,params,{responseType:'blob'})
}
登录后复制
还有一点需要注意,如果项目中用到了mock,请求结果会被mock拦截,并且修改返回数据类型,这样就会出现下载下来的文件打不开。如下图:data的数据类型变成了字符串,request为MockXMLHttpRequest类型,这是因为被mock重写了
所以,需要把mock关掉,这样就好了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)