美文网首页
js用blob下载文件打开乱码

js用blob下载文件打开乱码

作者: 多记录多学习 | 来源:发表于2021-11-10 11:23 被阅读0次

js处理下载的时候可以使用blob对象处理,将后端返回的流文件转换成blob对象,然后创建a链接,触发其点击事件下载
const downBlobFile = (data, name) => {
const blob = new Blob([data]);
let dom = document.createElement('a');
let url = window.URL.createObjectURL(blob);
dom.href = url;
dom.download = decodeURI(name);
dom.style.display = 'none';
document.body.appendChild(dom);
dom.click();
dom.parentNode.removeChild(dom);
window.URL.revokeObjectURL(url);
return true;
};

但是有时候会出现打开下载文件后乱码的i情况,这时候就把请求数据的responseType设置为blob


image.png

设置成功后打开的文件就可以正常展示了。

相关文章

网友评论

      本文标题:js用blob下载文件打开乱码

      本文链接:https://www.haomeiwen.com/subject/lzvbzltx.html