2013-04-16 46 views
0

插件仅适用于过滤器的文件我的服务器上,但是具有远程图像:Vintage.js:远程图像

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

如何解决呢?

+0

如果远程服务器明确允许访问图像数据应该是可能的。 http://en.wikipedia.org/wiki/Cross-origin_resource_sharing – CBroe

回答

0

您收到的错误是浏览器内置安全机制的一部分,用于防止黑客使用远程数据来操作网站。你无法绕过它(如果可以的话,这将是一个主要的安全漏洞,浏览器制造商将很快修复)

要确认这一点,同一个问题已经asked on the Vinatge.js website (as a github issue ticket),并且答案由Vinatge.js作者给出的是,它不可能加载远程图像。

对不起,让你失望。

解决方法是在自己的服务器上使用代理加载器来加载图像,以便它们不会以远程图像的形式提供给网站。

在某些情况下,它实际上可能是可能的。可以将远程服务器配置为允许它。然而,这种配置需要在远程服务器上完成,所以如果你无法访问它,那么问题依然存在。

+0

感谢您的详细解答! –