我正在使用AngularJS构建应用。我需要跨会话存储一些数据。我认为$cacheFactory
可能是一种选择。但是,我无法确定Cache object实际存储数据的位置。
有人可以告诉我如何在AngularJS的会话中在客户端存储数据吗? $cacheFactory
甚至是这种情况的选项吗?
谢谢
答案 0 :(得分:4)
$cacheFactory
merely stores the data in a JSON dict (called caches
at the time of writing),一旦重新加载应用,数据就会丢失。
在保持浏览器兼容性的同时,唯一的持久存储选项是cookie。如果您支持only modern browsers (>IE8),那么您也可以考虑使用浏览器提供的HTML5 localStorage
。
答案 1 :(得分:3)
不,这不是一个选择。缓存位于JS应用程序内存中。刷新页面后,它就消失了。
要跨会话缓存内容,您可以使用cookie或localStorage API。但是,跨会话缓存内容的更好,最可靠的地方是服务器端数据库。