客户端是否可以在服务器端请求后存储网页的本地副本,而无需手动保存网页(右键单击+另存为...)?
我有多个客户端显示来自服务器的网页循环。每个页面都有不同的媒体文件,如图像和swfs。作为默认缓存机制的替代方案,我希望客户端在第一次从服务器加载网页时,将网页的副本存储到客户端本地。这样我可以减少来自客户端的请求,每次循环加载网页请求。
每当内容发生变化时,服务器都会告诉客户端再次请求页面并覆盖客户端的本地副本。
答案 0 :(得分:1)
嗯,你可以这样做:
localStorage['this_page'] = document.querySelector('html').innerHTML;
当然,这只适用于支持localStorage的现代浏览器。没有其他浏览器API可以提供存储大量数据的方法。饼干太小了。您可以使用window.name作为替代方案,但这比任何其他方法都更糟糕。
document.querySelector当然可以替换为document.getElementsByTagName('html')[0],但只使用querySelector,因为它支持localStorage的所有地方。