代码之家  ›  专栏  ›  技术社区  ›  Niladri Banerjee - Uttarpara

Javascript:无法下载base64解码图像

  •  0
  • Niladri Banerjee - Uttarpara  · 技术社区  · 6 年前

    我想下载一个JS格式的图像,它是base64编码的。为此,我首先解码了图像并尝试下载它。文件正在下载,但下载的文件中的内容什么都不是。

    编码图像如下:

    数据:image/png;base64,Ivborw0kgoaaaansuheugaaaaaaaaaaafcayaaacnbyblaaaaheleqvqi12p4//8/w38giaxdibke0dhxgljnbaao9txl0y4ohwaaaabjru5erkjgg==

    var imgdata = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';

    var imggetbase64decode = imgData.replace(/^data:image\/(png|jpg);base64,/, ""); // imgData is the encoded base64 string.
    
    var data = imggetbase64decode, fileName = "my-download.png";
        var a = document.createElement("a");
            document.body.appendChild(a);
            a.style = "display: none";
            var json = data,
            blob = new Blob([json], {type: "octet/stream"}),
            url = window.URL.createObjectURL(blob);
            a.href = url;
            a.download = fileName;
            a.click();
            window.URL.revokeObjectURL(url);
    

    打开下载的文件时出错:

    1 回复  |  直到 6 年前
        1
  •  4
  •   user3937422 user3937422    6 年前

    在这里你可以得到你想要的东西 How to download a base64-encoded image?