下载文件另存为base64

时间:2019-04-10 09:06:11

标签: javascript download base64

我需要下载另存为base64字符串的文件。该文件可以是任何类型。

我尝试制作window.open(prefix + base64);,其中prefix是JS Reader在读取asDataUrl时生成的字符串。但是,下载前缀为data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,的文件会导致文件没有扩展名。

在这里可以做什么? (我必须使用base64作为源)

1 个答案:

答案 0 :(得分:0)

您可以使用JavaScript制作一个<a download>,然后单击它以建议一个文件名:

document.getElementById('download').onclick = () => {
    const base64 = '';  // …
    const link = document.createElement('a');
    link.href = 'data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,' + base64;
    link.download = 'my-document.docx';
    link.click();
};
<button type="button" id="download">Download</button>

尽管我不知道哪些浏览器无法识别该媒体类型为.docx,所以也许它们也不支持download属性。