问题:哪些浏览器版本支持CORS(跨域资源共享)头部用于Canvas中使用的跨域图像?
CORS可以应用于跨域XMLHttpRequest和图像请求。这个问题是关于图像请求的。我通常使用的浏览器版本兼容性http://caniuse.com/cors在这个问题上不清楚,google搜索也没有好的结果。
我找到了一篇最近Chrome开发博客文章,暗示CORS支持现代浏览器广泛使用,但由于WebGL安全问题可能会出现问题。
http://blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html
CORS的更多细节:
我们正在考虑使用Canvas和CORS以及W3C工作草案http://www.w3.org/TR/cors/#use-cases中描述的跨域图像请求的可行性。CORS被HTML Canvas用于允许类似Flash使用crossdomain.xml的方式来跨域使用资源。基本上,我们想要读取/编辑图像数据像素,而不想使用同源代理服务器。
通常,如果图像被跨域加载并与HTML Canvas一起使用,使用类似canvas.toDataURL()的函数访问像素会抛出安全错误。然而,如果提供图像的服务器添加了这样的头部,跨域使用应该是允许的。
access-control-allow-origin: *
我们最关注的浏览器:
我们计划通过使用Flash来解决IE缺乏Canvas支持的问题,这样对于桌面浏览器CORS问题,我们也可以采用此方法,但在移动设备上,使用Flash不是一个选择,并且在我们的情况下使用代理来进行同源请求也不可选。因此,我特别关注Andriod、Iphone和IPAD浏览器对CORS的支持。