HTML5缓存清单:将所有远程资源列入白名单?

时间:2010-03-11 17:37:47

标签: image caching html5 manifest

我正在制作包含博客的桌面版网站的iPhone版本。博客经常嵌入来自其他域的图像(图像URL总是以http://开头,显然是在这种情况下),但是因为我使用了cache-manifest,所以这些图像不会加载,因为它们未在清单文件。

我有一个NETWORK:白名单部分,其中包含我的所有AJAX请求文件等。我甚至将flickr服务器场列入白名单,因为我们添加到博客的很多图像来自我们的flickr页面。 flickr图像显示得很好,但来自另一个域的任何其他“随机”图像热链接显示已损坏。

我尝试添加这样一行:

的http://

到NETWORK:部分,但它似乎不喜欢http://作为白名单。

有没有人对此有任何想法?

谢谢! 亚历

2 个答案:

答案 0 :(得分:8)

只需在您的清单中添加“在线白名单通配符”:

NETWORK:
*

应该做的伎俩!更多信息on the whatwg spec page

希望这有帮助!

答案 1 :(得分:2)

我想我有一个解决方法。如果您创建了一个简单的服务器端文件(remoteResource.php),您可以像这样引用该怎么办:

remoteResource.php?resource=http://somewhere.com/remote/image.jpg

PHP(或您正在使用的任何服务器端语言)可能只是在远程资源中cURL并将其未经修改地发送到浏览器。然后,将该文件列入白名单。

我没有测试过这个,因为我正在使用的环境没有安装cURL(呃)但是我不明白为什么它不能工作。