我在 Facebook 上有一个基于画布的应用程序,需要加载很多图像,所以我在 JavaScript 中创建它们。
var img = new Image();
img.src = document.location.protocol + '//example.cloudfront.net/example_path/example.png';
这些图像托管在 Amazon 的 CDN 上,它们的基本 URL 类似于:
https://example.cloudfront.net/example_path/example.png
托管在云(EC2,也是亚马逊)中的应用程序的 URL 类似于:
https://cloud.example.com/path_to_app/
它适用于大多数浏览器,但不适用于 IE (8)。
在 IE 中,如果我检查创建的图像的src属性,它会显示正确的 URL,但浏览器会发出以下请求:
GET /path_to_app/proxy.php?url=https://example.cloudfront.net/example_path/example.png HTTPS/1.1
我的服务器上没有proxy.php,我的代码中的任何地方都没有“代理”这个词,无论是客户端还是服务器端。
关于通过 https 提供的 iframe 画布页面中的外部托管内容,我有什么不知道的吗?