$ cookies和localStorage有什么区别?

时间:2014-02-21 10:26:21

标签: angularjs local-storage

什么是$ cookies vs localSTorage。


$cookies.myFavorite = 'Steve jobs'; 


localStorage.myFavorite = 'Steve jobs'; 

2 个答案:

答案 0 :(得分:3)

$ cookies是一个Angular模块,它接受浏览器cookie函数并将它们包装在Angular中。 Cookie的存储容量小于localStorage(4k而不是5m),并且可以配置为每次尝试使用时提示访问者使用/接受。这可以迅速改变用户体验。出于这些原因,建议不要在浏览器中长期存储信息。饼干在技术文盲方面也因传播病毒而闻名,或者在某种程度上有害,但这些都不值得或完全正确。

随着HTML5的出现,localStorage(及其随附的sessionStorage)对网络来说有点新鲜,非常有用。虽然可以通过设置专门禁用它们,但大多数浏览器都预先配置了它们,您无需担心它。与cookie不同,每次浏览器想要使用这些功能时都无法提示用户。它们要么是关闭的,要么是关闭的,而且它们之间没有关系。这样可以在Web应用程序中实现更加无缝的体验。

建议将localStorage用于在浏览器中存储将在当前会话之后保留的内容。要删除localStorage中的内容,您必须通过localStorage.removeItem(itemName)显式清除它们。

建议使用sessionStorage存储您不希望在当前会话之外保留的内容。这是因为当访问者离开域或关闭浏览器时,会彻底清除sessionStorage。这使其成为基于会话的信息的绝佳存储库,例如临时购物车,要比较的项目列表等。

这里需要注意的是,cookie和浏览器存储都可以由个人用户清除,不应完全依赖于存储。您最好的选择始终是驻留在服务器上的数据库存储。

答案 1 :(得分:0)

$ cookies将被覆盖,并且他们有一个临时存储空间。

localStorage具有持久存储。