javascript - 创建网页的本地副本

标签 javascript html

客户端是否可以在服务器端请求后存储网页的本地副本,而无需手动保存网页(右键单击 + 另存为...)?

我有多个客户端显示来自服务器的网页循环。每个页面都有不同的媒体文件,例如图像和 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/

相关文章:

javascript - React.js - 创建简单的 Accordion 示例

javascript - 导航搜索建议

javascript - 共享 worker 确实共享变量

javascript - MeshNormalMaterial 不适用于 three.js 自定义几何体 : the geometry renders as black

javascript - 'display: none;' 是改善还是恶化性能?

html - 使用 div 将形状放在链接后面

javascript - 为什么动态添加的标签( Angular Directive(指令))给出未定义?

javascript - 特殊字符没有出现在警报框中,因为它

javascript - 使用 ServiceWorker 缓存 iframe 请求

javascript - Chrome 扩展程序的跟踪 URL