谈谈本地缓存的几种方式以及他们的区别?
说起本地缓存,大家想到的应该都是这几个方法:localStorage
、sessionStorage
、cookie
。
相同点不必我再多说了,都可以实现本地缓存
的效果。那么他们有什么不同呢?
接下来我把不同点分四个点来说:
与服务器交互
cookie
:是网站为了标识用户的身份而存储在用户本地终端上的数据(通常需要加密),通常会在 同源
的 HTTP请求
中携带(即使不需要),在浏览器和服务器之间来回传递。coolie
还有路径的概念,可以控制存储在某个路径下面。
localStorage & sessionStorage
: 不会自动把数据发给服务器,仅在本地存储
存储大小
cookie
:根据不同浏览器的限制,大小一般不能超过4k,因为每次 HTTP 请求
都会携带
localStorage& sessionStorage
虽然也有存储大小的限制,但比 cookie
大得多,可以达到5M或更大</