前端复习之--------Cookie、LocalStorage、SessionStorage

295 阅读2分钟

Cookie

HTTP Cookie是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器发起请求时被携带并发到服务器上。通常,它用于告知服务端两个请求是否来自同一个浏览器,如保持用户的登录状态。

Cookie主要用于以下三个方面:

1、会话状态管理(如用户登录状态、购物车、分析分数或者其他需要记录的信息)

2、个性化设置(如用户自定义、主题等)

3、浏览器行为跟踪

Cookie特点

1、大小受限,一般为4KB

2、统一域名下放Cookie的数量是有限的,不同浏览器的个数会不一样,一般为20个

3、Cookie支持设置过期时间,当过期时自动销毁

4、每次支持同域下的HTTP请求,都会携带当前域名下Cookie

5、支持设置为HttpOnly,防止Cookie被客户端的Javascript销毁

LocalStorage

一种持久化的存储方式,也就是说如果不动手清除,数据就永远不会过期。它采用的是键值对的方式进行存储。按照域名将数据分别保存到对应的数据库文件中。相比Cookie,保存的数据量更大。

LocalStorage的特点

1、大小限制为5M~10M

2、在同源的所有标签页和窗口之间共享数据

3、数据仅保存在客户端,不与服务器进行通信

4、数据持久存在且不会过期,重启浏览器之后数据依然存在

5、对数据的操作是同步的

SessionStorage

sessionStorage是一种会话级别的缓存,关闭浏览器时数据会被清除。需要注意的是,sessionStorage的作用域是窗口级别的,也就是不同窗口之间保存的sessionStorage数据是不同共享的。

seeesionStorage的特点

1、sessionStorage的数据只是存在于当前浏览器的标签页

2、数据在页面刷新后仍然存在,但在关闭浏览器标签页之后数据就会被清除

3、与LocalStorage一样拥有统一的API接口

4、对数据的操作是同步的