是否可以使用localStorage进行客户端页面/ DOM缓存?

时间:2011-02-14 18:41:38

标签: html5 local-storage

我正在阅读Local Storage in HTML5,我开始认为它有点像我使用memcached的客户端版本。这让我思考 - 我目前在memcache中进行页面级缓存。

localStorage可以吗?也就是说,组装的页面可以在localStorage中存储自己(或者更重要的是,它本身可能是其中的一部分),这样客户在下次用户显示页面时就不必如此努力地工作吗?

在我看来,因为事物只存储为字符串,所以除非有一些字符串到对象的转换可用,否则这可能不起作用。

2 个答案:

答案 0 :(得分:5)

缓存完整界面(接近结尾)标题下查看Christian's 2010 24ways post。他基本上做了:

localStorage.setItem('state',f.innerHTML);

其次是:

if('state' in localStorage){
    f.innerHTML = localStorage.getItem('state');
}

f是他想要缓存的元素。

答案 1 :(得分:2)

问题在于,在加载页面之前,您不知道缓存中的内容,这意味着您需要执行另一个 HTTP请求来获取您的数据确实需要导致更多的开销。我肯定会坚持使用服务器端的资源缓存。

你可以这样做,但是这样的事情基本上会涉及一个Javascript的主索引页面,该页面加载了缓存的本地文件或执行了Ajax请求以从服务器加载内容。