使用toDataUrl()从画布保存图像 - 受污染的画布错误解决方法?

时间:2017-07-22 05:20:47

标签: javascript html5 canvas html5-canvas data-uri

我目前正在构建一个功能,用户可以上传视频,然后选择缩略图。它是基于这个小提琴:

http://jsfiddle.net/e98tffu6/556/

保存画布数据的代码 - 从toDataUrl()开始 - 在正常情况下正常工作。已经测试过了。我可以通过AJAX获取图像数据并将其发布到我的操作页面。

但是我得到了关于Canvas被污染的经典错误。像这样:

  

Uncaught SecurityError:无法执行'toDataURL'   'HTMLCanvasElement':可能无法导出受污染的画布。

那是因为我的视频来自不同的域名。我使用CDN。

我正在http://example.com并加载http://videos.example.com的视频 - 因此代码在此特定情况下无效。

我知道以某种方式使用javascript,我必须在我的源素材上设置一个名为crossOrigin = "Anonymous"的属性,无论是视频本身还是画布。 SO上有这个问题有一百万种变体。我已经看了他们所有,我仍然无法弄清楚我在做什么。

有人可以把toDataUrl()在这种情况下工作的例子放在一起吗?

提前致谢。

0 个答案:

没有答案