我有一张图片:
<img id="img1" src="http://igyaan.in/wp-content/uploads/2013/03/Nvidia-580x362.jpg" />
来自网址的图片正在缓存,但图片未显示。
我使用firebug对其进行了分析,在那里我可以看到对图像的GET请求,并返回图像。此外,还有一些我从未请求过的facebook照片请求(firebug:Bad request):
http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc7/424831_319096764809781_1948053300_n.jpg
jsFiddle:http://jsfiddle.net/Qb6YX/5/
知道为什么会这样吗?我该如何解决这个问题呢? MoreInfo:我正在使用Rss供稿阅读器,它会显示帖子的图像。我在这个特定的网站上遇到了麻烦。
答案 0 :(得分:2)
图像很可能受到热链接保护。这就是当您尝试在页面上加载时重定向的原因。在这种情况下,您应该使用服务器端代理来检索图像并从那里加载它。
使用Images.weserv.nl中的外部服务:
<img src="http://images.weserv.nl/?url=igyaan.in/wp-content/uploads/2013/03/Nvidia-580x362.jpg" />
请参阅jsFiddle
如果您为此目的在服务器上托管代理脚本会更好,这样您的RSS源阅读器的依赖性就会降低。
但是,有时候我们应该尊重网站所有者对热链接保护的决定。一种方法是替换无法加载默认图像的图像。