首页 新闻 赞助 找找看

请问IE8如何读取本地图片的Base64字符串?

0
悬赏园豆:50 [待解决问题]

情况是这样的,后台中有个图片上传的方法,接收Base64字符串(为了方便移动端上传图片),将字符串转成图片后保存.

现在开发前端时,FF和Chrome可以用过HTML5的 FileReader 的 readAsDataUrl来直接获取所选择文件的base64字符串..

 

而IE8 不支持HTML5,所以不能这样写.

后来在网站找了很久之后,发现如下的js代码在本地页面上能获取到base64字符串.

可是将页面放到服务器的时候,就提示"拒绝访问" 了,猜它是由于跨域的原因吧..

代码如下:

var realPath=getFilePath( input.value);//获取文件的真实本地路径.

                    var xmlHttp = new ActiveXObject("MSXML2.XMLHTTP");
                    xmlHttp.open("POST",realPath, false);
                    xmlHttp.send("");

                    var xml_dom = new ActiveXObject("MSXML2.DOMDocument");
                    var tmpNode = xml_dom.createElement("tmpNode");
                    tmpNode.dataType = "bin.base64";
                    tmpNode.nodeTypedValue = xmlHttp.responseBody;
                    var imgBase64Data = tmpNode.text;

 

看来用http请求的方式不行..

请问有什么办法可以让IE8读取出所选图片的base64呢?

 

谢谢了!

hexllo的主页 hexllo | 菜鸟二级 | 园豆:318
提问于:2015-08-11 18:26
< >
分享
所有回答(1)
0

这个是产生你的问题的原因:

http://q.cnblogs.com/q/74574/#c_970484

 

这个是解决办法:

http://q.cnblogs.com/q/74423/#c_970651

Launcher | 园豆:45045 (高人七级) | 2015-08-12 09:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册