Cookie、token、session的区别是什么?

1、优先级
Cookie<session<token
2、安全性

Cookie
1.cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session
2.HTTP是一种无状态协议,服务器没有办法单单从网络连接上面知道访问者的身份,为了解决这个问题,就诞生了Cookie
Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie
客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。

session
1.session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie
2.关闭浏览器不会关闭session,它具失效日期,失效后服务器认为客户端停止了活动,并删除session以节省空间

Token
1.作为身份认证 token安全性比session好,因为每个请求都有签名还能防止监听以及重放攻击
2 .Oauth token提供的是认证和授权,认证针对用户,授权针对app
3.token的生成一般是采用uuid保证唯一性,当用户登录时为其生成唯一的token,存储一般保存在数据库中。token过期时间采用把token二次保存在cookie或session里面,根据cookie和session的过期时间去维护token的过期时间

cookie 和session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session。

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、所以个人建议:
将登陆信息等重要信息存放为SESSION
其他信息如果需要保留,可以放在COOKIE中

cookie、token 和session 的区别

token就是令牌,比如你授权(登录)一个程序时,他就是个依据,判断你是否已经授权该软件;cookie就是写在客户端的一个txt文件,里面包括你登录信息之类的,这样你下次在登录某个网站,就会自动调用cookie自动登录用户名;session和cookie差不多,只是session是写在服务器端的文件,也需要在客户端写入cookie文件,但是文件里是你的浏览器编号.Session的状态是存储在服务器端,客户端只有session id;而Token的状态是存储在客户端。

TokenCookieSession 都是用于在客户端和服务器之间传递信息的方式,但是它们在实现和应用场景上有所不同。 1. TokenToken 是一种轻量级的身份验证和授权机制,通常使用 JWT(JSON Web Token)格式进行编码和传递。Token 是一种无状态的机制,不需要在服务器端保存任何信息,而是将认证和授权的信息编码为 Token,发送给客户端保存。客户端在后续请求中携带 Token,服务器接收到请求后解码 Token,以验证用户身份和请求权限。由于 Token 的无状态特性,使得它可以被广泛使用于分布式系统中。 2. CookieCookie 是一种在客户端保存数据的机制,它是通过在客户端的浏览器中存储一些数据来实现的。Cookie 通常用于维持用户的会话状态,比如用户登录后,在后续的请求中都会带上 Cookie 信息,以便服务器判断用户的身份和请求权限。Cookie 存在一些安全性问题,比如可以被窃取和篡改,因此需要采取一些安全措施,比如使用 HTTPS 协议传输。 3. SessionSession 是一种在服务器端保存用户会话信息的机制。当用户第一次访问服务器时,服务器会为用户创建一个 Session,生成一个 Session ID,并将 Session ID 保存在 Cookie 中,发送给客户端。客户端在后续请求中携带 Session ID,服务器接收到请求后根据 Session ID 获取用户的会话信息。Session 可以保存一些敏感信息,比如用户的登录状态、购物车信息等,因此需要采取一些安全措施,比如对 Session ID 进行加密和验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值