java-web-day7-会话跟踪技术

会话跟踪技术

1.cookie

优点:HTTP协议中支持的技术

缺点:

移动端App无法使用cookie

安全性不强, 而且用户可以自己禁用cookie

cookie不能跨域

什么是跨域?协议,IP/域名, 端口三者中有一个不一样就是跨域

2.session--基于cookie实现

优点:用户数据存储在服务端, 只给浏览器一个id凭证, 数据最安全

缺点:

1.服务器集群环境下无法直接使用session

2.因为session是基于cookie实现的, 所以cookie的缺点, 它都有

3.因为数据存储在服务端, 会增加服务器的存储压力

3.令牌技术

优点:

1.在pc端, 移动端都可以使用

2.解决了集群环境的认证问题

3.数据没有存储在服务端, 可以减轻服务端存储压力

缺点:

需要自己去实现

三种会话跟踪技术的比较:

1.cookie是将用户信息存储在cookie中, 然后

浏览器在请求响应中带着这些信息去进行服务器验证

2.session是将用户信息存储在服务端,由服务端只给浏览器一个代表身份的id,

浏览器在请求和响应中携带id, 然后服务器对id进行解析, 完成身份验证

3.令牌技术是服务器将用户信息进行编码签名, 生成一个身份令牌,

然后发送令牌给浏览器作为身份凭证, 浏览器在请求和响应中携带令牌进行身份验证

打个比方:

你去微服私访, 去拜访县太爷,

cookie相当于自报家门, 嗯, 老子就是你的老大

session相当于入场券, 鄙人, 是被县太爷邀请来的,这是请柬, 你们可以查备案啊

而令牌相当于,你没说你是皇帝, 但是你穿着龙袍,

其实就是对用户信息进行编码, 加上签名

相关推荐
HehuaTang3 小时前
requests 调大并对齐 limits 提升POD高负载场景下性能
java·docker·kubernetes
FreeBuf_3 小时前
利用零宽度字符的隐形JavaScript混淆工具InvisibleJS浮出水面
开发语言·javascript·ecmascript
徐_三岁3 小时前
127.0.0.1 和 localhost 有什么区别?
前端
SuperherRo3 小时前
JAVA攻防-Shiro专题&key利用链&CB1链分析&入口点&调用链&执行地&Class加载
java·shiro·反序列化·cb1链
lsx2024063 小时前
Go 语言指针
开发语言
沛沛老爹3 小时前
Web开发者转型AI:Agent Skills版本控制与管理实战——从Git到AI技能仓库
java·前端·人工智能·git·架构·rag
我命由我123453 小时前
充血模型与贫血模型
java·服务器·后端·学习·架构·java-ee·系统架构
yyt3630458413 小时前
TypeScript { [key: string]: unknown } 索引签名写法和 Record 替代
前端·javascript·vue.js·typescript·ecmascript·es6
wearegogog1233 小时前
基于MATLAB的IEEE 9节点系统潮流计算
开发语言·matlab
重学一遍3 小时前
Spring Security + JWT + Redis 的认证授权系统
java·redis·spring