有人知道如何在浏览器中强制页面缓存吗?我需要多次重新加载页面,而浏览器没有缓存页面!
问问题
12667 次
3 回答
7
如果浏览器没有缓存页面,那么您只能使用其中之一:
<meta http-equiv="Cache-control" content="public">
或者
<meta http-equiv="Cache-control" content="private">
您不能以编程方式覆盖浏览器设置。这将是一个安全问题!
于 2013-09-27T20:23:39.327 回答
1
即使你有<meta http-equiv="Cache-control" content="public">
其他因素需要考虑。
请注意,某些浏览器对缓存有文件大小限制......如果可以的话,将 html 保持在 25Kb 以下,并将 css、js 等外部资源......保持在 1Mb 以下,但有关浏览器的详细信息,请参阅:here和here
您可以检查browser.cache.disk.max_entry_size
某些浏览器,document.getElementsByTagName('html')[0].outerHTML.length
如果无法预先计算文件的大小,您可以估算长度。
您的服务器需要适当地设置“Last-Modified”和“Expires”
如果启用,这只会增加缓存的可能性,而不是强制它。如果已启用并且未启用缓存,您可能会考虑使用本地存储(有些人会完全禁用缓存以应对 1 个特定站点)
于 2013-09-27T21:32:11.473 回答
0
您必须添加此元标记:
<meta http-equiv="Cache-control" content="public">
于 2013-09-27T20:21:26.170 回答