Cookie,Session,Token的区别

Cookie

cookie是一个非常具体的东西,指的是浏览器里面能永久存储的一种数据,仅仅是浏览器实现的一种数据存储功能。
Cookie由服务器生成,发送给浏览器,浏览器把cookie以K-V形式保存到某个目录下的文本文件内,下一次请求同一网站时会把cookie发送给服务器。由于cookie是存在客户端上的,所以浏览器加入了一些限制确保cookie不会被恶意使用,同时不会占据太多磁盘空间,所以每个于的cookie数量都是有限的。

Seesion

session从字面上讲,就是会话。类似于和一个人交谈,你要确定身份。服务器要知道当前发送请求给自己的是谁,为了区分,服务器就要给每个客户分配不同的身份标识,然后客户端每次向服务器发送请求的时候,都带上这个身份标识,服务器就知道这个请求来自于谁。
至于客户端怎样保存这个“身份标识”,可以有很多种方式。对于浏览器客户端,大家都默认采用cookie的方式。

服务器使用session把用户的信息临时保存在服务器上,用户离开网站后session会被销毁。这种用户信息存储方式相对于cookie来说是安全的,可是session有一个缺陷:如果web服务器做了负载均衡,那么下一个操作请求到了另一台服务器的时候session就会消失。

Cookie和Session的区别?

1、Cookie和Session都是会话技术,Cookie是运行在客户端,Session是运行在服务器端。

2、Cookie有大小限制以及浏览器在存cookie的个数也有限制,Session是没有大小限制和服务器的内存大小有关。

3、Cookie有安全隐患,通过拦截或本地文件找得到你的cookie后可以进行攻击。

4、Session是保存在服务器端上会存在一段时间才会消失,如果session过多会增加服务器的压力。

Token

token的生成流程:
1.token是不存储用户的身份信息,而是通过自己的私钥+登录成功后生成的身份id+加密算法;

2.生成一个token值(也就是签名)。每次用户请求接口时,都要携带对应的token;

3.然后服务器每次都要去实时的解密用户的token(也就是验证签名对不对),如果验证失败,就是伪造的请求,返回错误码即可。反之直接返回对应的接口返回值。

cookie,session,token的作用

1.cookie:存放在浏览器相关的硬盘中
2.session:存放在服务器端的内存中,退出后,被清空
3.token:服务器端生成后,不保存,发给客户端,客户端的header里面每次发生请求时要携带

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值