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相当于入场券, 鄙人, 是被县太爷邀请来的,这是请柬, 你们可以查备案啊

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

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

相关推荐
国服第二切图仔17 分钟前
Rust中泛型函数实现不同类型数据的比较
开发语言·后端·rust
Anlici1 小时前
连载小说大学生课设 需求&架构
前端·javascript·后端
我命由我123451 小时前
Derby - Derby 服务器(Derby 概述、Derby 服务器下载与启动、Derby 连接数据库与创建数据表、Derby 数据库操作)
java·运维·服务器·数据库·后端·java-ee·后端框架
技术砖家--Felix1 小时前
Spring Boot入门篇:快速搭建你的第一个Spring Boot应用
java·开发语言·音视频
国服第二切图仔1 小时前
Rust开发之使用Trait对象实现多态
开发语言·算法·rust
Yolo566Q1 小时前
Python驱动的无人机生态三维建模与碳储/生物量/LULC估算全流程实战技术
开发语言·python·无人机
i源1 小时前
Java语言处理Js文件内容格式化
java·javascript
我不是程序猿儿1 小时前
【C#】XtraMessageBox(DevExpress)与MessageBox(WinForms 标准库)的区别
开发语言·c#
2501_938769992 小时前
React Server Components 进阶:数据预取与缓存
前端·react.js·缓存