如何使用meta refresh强制缓存图像?

4

我有一个统计页面,其中有一个刷新标签。

<meta http-equiv="refresh" content="10" />

我该如何停止页面强制刷新图片?我尝试设置缓存控制,但浏览器(IE7)仍会刷新页面中50多张图片。

Response.Cache.AppendCacheExtension("post-check=900,pre-check=3600");
3个回答

3
我通过使用JavaScript手动刷新页面来解决了这个问题,而不是使用meta标签。这样可以防止浏览器在每次重新加载时刷新所有图像,但仍会强制浏览器刷新ASPX页面本身。
<script>
setTimeout('document.location=document.location',10000)
</script>

0

也许你的IE浏览器设置为不缓存图片?你是如何生成这些图片的?它们是否包含某种不缓存头信息?


这肯定是缓存的问题,因为当其他页面使用相同的图像URL时,就不会有更多的GET请求。只有“http-equiv refresh”强制图像立即过期。 - Ollie

0

这不是一个完整的答案,但是统计页面是否在SSL下以及图像src是否由CSS设置?我模糊地记得我曾经遇到过类似的问题,当页面在SSL下并且CSS正在更改图像src时(例如当悬停在按钮上时等...它不仅仅是标准的HTML图像标签...图像是通过CSS更改src属性的)。因此,CSS、SSL和IE的组合导致了这个问题。很抱歉我记不清楚我们遇到的确切问题,但是通过JavaScript预加载图像(并更改悬停时更改按钮的方式),我们能够解决这个问题。这可能是您想要检查的内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接