Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

canvas绘制图片报错:Uncaught SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

一. 问题原因

由于浏览器的安全考虑,如果在使用canvas绘图的过程中,使用到了外域的图片资源,那么在toDataURL()时会抛出安全异常。

二. 解决办法

解决方案1:

在canvas绘图过程中使用的图片应该是当前域下的。
解决方案2:
访问的服务器允许,资源跨域使用,也就是说设置了CORS跨域配置

//图片
var img = new Image();
img.setAttribute('crossOrigin', 'anonymous');
img.src = url;
// 视频
var video = new Video();
video.setAttribute('crossOrigin', 'anonymous');
video.src = url;
# js   前端  

评论

企鹅群:39438021

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×