DOM异常5在javascript中有效的base64图像字符串上的INVALID CHAR
发布时间:2020-12-14 22:24:40 所属栏目:资源 来源:网络整理
导读:我正在尝试将一个图像的base64字符串解码为二进制解码,以便它可以由操作系统本地下载和显示。 当作为具有数据URI前缀(数据:img / png; base64)的HTML IMG元素的src放置时,我已成功呈现字符串,但是当使用atob函数或goog闭包函数时,它失败。 但是,解码在
我正在尝试将一个图像的base64字符串解码为二进制解码,以便它可以由操作系统本地下载和显示。
当作为具有数据URI前缀(数据:img / png; base64)的HTML IMG元素的src放置时,我已成功呈现字符串,但是当使用atob函数或goog闭包函数时,它失败。 但是,解码在这里放置成功:http://www.base64decode.org/ 有任何想法吗? 编辑: 代码就像这样: imgEl.src = 'data:img/png;base64,' + contentStr; //this displays successfully decodedStr = window.atob(contentStr); //this throws the invalid char exception but i just //used a different script to get it decode successfully but still won't display locally base64字符串本身太长,无法显示(限制为30,000个字符) 解决方法
我刚刚把头撞在墙上一段时间。
这个问题有几个可能的原因。 1)Utf-8问题。这里有一个很好的解决方案。 http://monsur.hossa.in/2012/07/20/utf-8-in-javascript.html 在我的情况下,我也必须确保所有的空格都不在字符串之前传给atob。例如 function decodeFromBase64(input) { input = input.replace(/s/g,''); return atob(input); } 真正令人沮丧的是,base64使用python中的base64库正确解析,而不是在JS中解析。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |