cookie 和 session 的区别,localstorage 和 sessionstorage 的区别

Cookie 和 session 都可用来存储用户信息,cookie 存放于客户端,session 存放于服务器端,
因为 cookie 存放于客户端有可能被窃取,所以 cookie 一般用来存放不敏感的信息,比如
用户设置的网站主题,敏感的信息用 session 存储,比如用户的登陆信息,session 可以
存放于文件,数据库,内存中都可以,cookie 可以服务器端响应的时候设置,也可以客
户端通过 JS 设置 cookie 会在请求时在 http 首部发送给客户端,cookie 一般在客户端有
大小限制,一般为 4K,
下面从几个方向区分一下 cookie,localstorage,sessionstorage 的区别

1、生命周期:

Cookie:可设置失效时间,否则默认为关闭浏览器后失效
Localstorage:除非被手动清除,否则永久保存
Sessionstorage:仅在当前网页会话下有效,关闭页面或浏览器后就会被清除

2、存放数据:

Cookie:可以保存 4k 左右
Localstorage 和 sessionstorage:可以保存 5M 的信息

3、http 请求:

Cookie:每次都会携带在 http 头中,如果使用 cookie 保存过多数据会带来性能问题
其他两个:仅在客户端即浏览器中保存,不参与和服务器的通信

4、易用性:

Cookie:需要程序员自己封装,原生的 cookie 接口不友好
其他两个:即可采用原生接口,亦可再次封装

5、应用场景:

从安全性来说,因为每次 http 请求都回携带 cookie 信息,这样子浪费了带宽,所以 cookie
应该尽可能的少用,此外 cookie 还需要指定作用域,不可以跨域调用,限制很多,但是
用户识别用户登陆来说,cookie还是比storage好用,其他情况下可以用storage,localstorage
可以用来在页面传递参数,sessionstorage 可以用来保存一些临时的数据,防止用户刷新
页面后丢失了一些参数。

我的博客只写前端博文,点击我去看更多喜欢的前端博文,欢迎大家一起讨论学习!【https://blog.csdn.net/qq_29101285?spm=1011.2266.3001.5343】

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值