gpt4 book ai didi

javascript - XDomainRequest可以用来加载和绘制图片吗?

转载 作者:行者123 更新时间:2023-11-29 22:13:08 26 4
gpt4 key购买 nike

我正在从不同域的服务器加载图像。图像启用了 CORS(它们具有此 header :Access-Control-Allow-Origin: *)。在现代浏览器中,使用 image.crossOrigin = '' , 我能够安全地将它们绘制到 <canvas> .

我希望也能在 Internet Explorer 9 上执行相同的操作。IE9 不支持 crossOrigin在图像上。它确实有 XDomainRequest使用 Access-Control-Allow-Origin 的跨域请求标题。

是否可以通过 XDomainRequest 加载 PNG并将其绘制到 Canvas 上?

最佳答案

在 IE 中使用 XDomainRequest 下载图片的复杂性

IE 只允许 XdomainRequest 使用纯文本数据(啊!!):http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx

IE 还将使用其 FindMimeFromData 嗅探所有传入数据。所以即使你去掉 url 的类型前缀 (data:image/png;base64),这个嗅探器也会意识到你的 base64 文本实际上是一个图像并相应地对待它:http://msdn.microsoft.com/en-us/library/ms775147(v=vs.85).aspx

一种可能的尝试是以某种方式重新编码 base64 文本以混淆嗅探器。

MS 显然意识到他们的 CORS 政策过于严格,并计划在他们的 webAPI 中添加扩展的 CORS 支持:http://channel9.msdn.com/Shows/Web+Camps+TV/ASPNET-Web-API-and-CORS-Support

否则,您只能使用当前的解决方案,即从您自己的网络服务器上弹回图像,这样它们就不再是 X 域了。

关于javascript - XDomainRequest可以用来加载和绘制图片吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16966758/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com