最近遇到个关于mp4视频下载的需求,以前只做过文件的下载,觉得原理是差不多。又查了很多vue文件下载的文章,经过筛选排查最后总结出了以下这两种方法。
第一种:
正常的base64视频流的显示是这样子的 data:video/mp4;base64,二进制
使用a标签的href就拼接成上面的格式要求调用,就可以下载下来
downloadFile(url).then(res=>{
if (res.data.code==200){
let arr = res.data.data
// base64二进制加上前缀data:video/mp4;base64,
const source = `data:video/mp4;base64,${arr}`;
const link = document.createElement('a');
link.href = source;
link.download = fileName; //文件名
link.click();
}
})
第二种:把base64转为blob对象方法,转为blob视频链接;在用window.URL.createObjectURL获得一个http格式的url路径&#x