【发布时间】:2018-10-09 13:48:41
【问题描述】:
在我的网络应用程序中,我想提供消息日志的下载。这是通过以下 javascript 函数完成的:
let download = (content, filename) => {
let uriContent = "data:application/octet-stream;charset=utf-8;base64," + btoa(content);
let link = document.createElement('a');
link.setAttribute('href', uriContent);
link.setAttribute('download', filename);
let event = new MouseEvent('click');
link.dispatchEvent(event);
};
该功能通过鼠标单击执行,在大多数情况下都可以正常工作。
但是,当文件变得稍大一些 ( > ~3MB) 时,Chrome 中的下载会因网络错误而失败。
相同的下载在 Firefox 等其他浏览器中也能正常运行。隐身模式无法解决问题。
我可以更改代码中的某些内容以使下载正常运行吗?或者这是阻止下载的 Chrome 的一些错误(或功能)?
【问题讨论】: