cookie,localStorage,sessionstorage及token的区别

博客介绍了Cookie和Session的区别,包括安全性、储存类型、有效期和储存大小等方面。还提及了Cookie、sessionStorage和localStorage。重点阐述了Token相关知识,如组成、认证流程,指出基于Token的认证可减轻服务器压力,避开同源策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cookie和sesson

  1. 安全性:sesson比cookie安全,sesson时存储在服务器端的,cookie时存储在客户端
  2. 储存的类型不同:cookie只支持字符串数据。想要设置其他类型的数据需要转成字符串sesson可以储存任意类型
  3. 有效期不同:cookie可以设置长时间保存比如长使用的默认登陆功能,sesson一般失效事件较短,客户端关闭或者sesoon超市都会失效
  4. 储存大小不同:单个cookie储存的数据不能超过4k,sesson可储存的数据远高于cookie,但是访问量过多,会占用过多的服务器资源

cookie, sessionstorage,localstorage

分类生命周期储存量储存位置
cookie默认保存在内存中,随浏览器关闭失效,如设置过期时间,在时间过期后失效4kb保存在客户端每次请求都会带上
local storage理论上永久有效,除非手动清除4.98mb存在客户端不与服务器交互节省网络流量
sessionStorage仅在当前页面有效,关闭页面后浏览器失效4.98mb,部分浏览器没限制存在客户端不与服务器交互节省网络流量

token相关:

token的意思是“令牌”,是用户身份的验证方式,最简单的token组成:uid(用户唯一的身份标识)、time(当前时间的时间戳)、sign(签名,由token的前几位+盐以哈希算法压缩成一定长的十六进制字符串,可以防止恶意第三方拼接token请求服务器)。还可以把不变的参数也放进token,避免多次查库
  1. 客户端使用用户名跟密码请求登陆
  2. 服务端接受请求,去验证用户名和密码
  3. 验证成功以后,服务端会签发一个token并且吧这个token发送给客户端
  4. 客户端收到token以后,会把它储存起来,比如放到cookie里面或是localstorage里
  5. 客户端每次访问服务端请求资源时需要带着服务端签发的token
  6. 服务端收到请求,然后去验证客户端请求里面带着的token,如果验证成功就想客户端返回请求的数据
  7. 每一次请求都要带着token需要吧token放到http 的header里
  8. 基于token的认证是一种服务端无状态的认证方式,服务端不用存储token数据,用解析token的时间换区session的存储空间,从而减轻服务器的压力,减少频繁的查询数据库 token完全由应用管理,素以他可以避开同源策略
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值