客户端是否可以在服务器端请求后存储网页的本地副本,而无需手动保存网页(右键单击 + 另存为...)?
我有多个客户端显示来自服务器的网页循环。每个页面都有不同的媒体文件,例如图像和 swf。作为默认缓存机制的替代方案,我希望客户端在第一次从服务器加载网页期间将网页副本存储到客户端本地。这样我就可以减少每次循环加载网页请求时来自客户端的请求。
每当内容发生变化时,服务器会告诉客户端重新请求页面并覆盖客户端的本地副本。
最佳答案
好吧,你可以这样做:
localStorage['this_page'] = document.querySelector('html').innerHTML;
当然,这只适用于支持 localStorage 的现代浏览器。没有其他浏览器 API 可以提供存储大量数据的方法。 cookies 太小了。您可以使用 window.name 作为替代方法,但这比其他任何方法都更像是一种技巧。
当然,document.querySelector 可以替换为 document.getElementsByTagName('html')[0],但只需使用 querySelector,因为它在 localStorage 的所有地方都受支持。
关于javascript - 创建网页的本地副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12831382/