起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2488|回复: 3

[处理中3] 微信多选上传图片调用toDataURL问题

[复制链接]

6

主题

14

帖子

50

积分

初级会员

Rank: 2

积分
50
QQ
发表于 2017-7-20 16:25:39 | 显示全部楼层 |阅读模式
        function convertImageToCanvas(image) {  
            var canvas = document.createElement("canvas");  
            canvas.width = image.width;  
            canvas.height = image.height;  
            canvas.getContext("2d").drawImage(image, 0, 0);  
            return canvas.toDataURL();  
        }
这段代码在PC端选择图片调用执行到toDataURL()正常,在微信端选择图片调用执行提示:Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.有没有解决方法,我查了说是跨域问题,image加了crossOrigin="Anonymous"也不行。
发表于 2017-7-20 16:51:05 | 显示全部楼层
http://www.cnblogs.com/tianma3798/p/5920106.html
就是跨域问题!
image 的URL是什么!
它所在的服务器支持跨域才可以的!  是访问的当前服务器的图片吗??
因为微信公众号的域名已经变了!你的服务器要设置为支持跨域访问才行


关于跨域问题理解
http://docs.wex5.com/ajax-cross-domain/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

6

主题

14

帖子

50

积分

初级会员

Rank: 2

积分
50
QQ
 楼主| 发表于 2017-7-20 18:31:57 | 显示全部楼层
liangyongfei 发表于 2017-7-20 16:51
http://www.cnblogs.com/tianma3798/p/5920106.html
就是跨域问题!
image 的URL是什么!

是选择微信中的图片上传自己的服务器,alert出来的选择微信图片路径是:weixin://resourceid/cd1c5e643981afd0e5cde713e82aabd6,赋值给image.src可以显示图片,加了跨域image.setAttribute('crossOrigin', 'anonymous');图片就不显示了,不加跨域可以显示,什么原因。
回复 支持 反对

使用道具 举报

发表于 2017-7-21 09:37:47 | 显示全部楼层
wangcy 发表于 2017-7-20 18:31
是选择微信中的图片上传自己的服务器,alert出来的选择微信图片路径是:weixin://resourceid/cd1c5e64398 ...

路径
  1. weixin://resourceid/cd1c5e643981afd0e5cde713e82aabd6
复制代码

应该是本地路径吧!

获取网络路径,建议上网查下
https://www.baidu.com/link?url=T ... 56a0000000259715a27

还有
http://www.jianshu.com/p/c3aa975923de


既然你说不加跨域就可以显示!那就不用加了吧,我觉得微信底层已经处理过跨域问题的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-4-20 12:16 , Processed in 0.055091 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表