如何允许跨域访问imgs和画布?

时间:2012-08-03 10:36:40

标签: html canvas image cors

我对此代码有疑问:

var imgPixels = canvasContext.getImageData(0, 0, imgW, imgH);

Google Chrome控制台出错:

Unable to get image data from canvas because the canvas has been tainted by cross-origin data.

这是因为我在domain1.com上运行了这个站点,img src在domain2.com上,后来我想用本地(修改过的)数据设置新的src(如下所示),我认为。

return canvas.toDataURL();

我尝试了很多方法来允许跨域访问,但没有任何作用:

if (canvas.crossOriginKeyword)
{
     canvas.removeAttribute("crossorigin");
}

if (canvasContext.crossOriginKeyword)
{
    canvasContext.removeAttribute("crossorigin");
}

我的.htaccess文件包含:

Header always set Access-Control-Allow-Origin *

我也尝试过:

<?php
header('Access-Control-Allow-Origin: *');
?>

我的脚本应该适用于许多浏览器和许多服务器,所以我想避免修改浏览器或apache配置,除非真的需要它。

我不能使用代理。

请帮帮我:)

0 个答案:

没有答案