会话控制技术

三种会话技术初识

会话控制定义

所谓会话控制 就是 对会话进行控制
 
HTTP 是一种无状态的协议,它没有办法区分多次的请求是否来自于同一个客户端;
 
无法区分用户 而产品中 又大量存在着 这样的需求,所以 我们需要 通过 会话控制 来解决该问题。

常见的 会话控制技术 有三种

  1. cookie
  2. session
  3. token

cookie

cookie定义

cookie 是 HTTP 服务器 发送到 用户浏览器保存在本地的一小块数据

  1. cookie 是保存在 浏览器端 的一小块数据。

  2. cookie按照域名 划分保存的。

cookie示例:
  
cookie举例
  

cookie特点

浏览器服务器 发送请求时,会自动将 当前域名下 可用的 cookie 设置在 请求头中,然后传递给服务器。

注:这个 请求头的名字 也叫cookie,所以将 cookie 理解为一个 HTTP 的请求头 也是可以的。
  

运行示例

 
cookie运行流程
  

session

定义

session 是保存在 服务器端 的一块儿数据 ,保存当前访问用户的相关信息。

作用

实现会话控制,可以识别用户的身份快速获取当前用户的相关信息

运行例图

 
session运行例图1

  
session运行例图2
  

session和 cookie 的区别

cookiesession 的区别主要有如下几点
 
1,存在的位置

cookie:浏览器端

session:服务端

2,安全性

cookie 是以明文的方式存放在客户端的,安全性相对较低

session 存放于服务器中,所以安全性相对较好

3,网络传输量

cookie 设置内容 过多会增大 报文体积,会影响传输效率
session 数据存储在服务器,只是通过 cookie 传递 id,所以不影响传输效率。

4,存储限制

浏览器 限制 单个 cookie 保存的数据不能超过 4K ,且单个域名下存储数量也有限制。

session 数据存储在服务器中,所以没有这些限制。

token

定义

token服务端 生成并返回 给 HTTP 客户端的一串加密字符串, token 中保存着 用户信息。本质上就是一串加密字符串

作用

实现会话控制,服务端可以通过它,来实现识别用户的身份主要用于移动端 APP。

创建时机

服务端在校验身份通过后,才可以创建

工作流程

填写参数校验身份,如账号和密码,校验通过后响应 token,token 一般是在响应体中返回给客户端的。
  
例图:
 
session运行例图1
  

session运行例图2
  

注:token中存在用户的信息,服务器校验后可以从中提取所需用户信息。

token特点

  1. 服务端压力更小(数据存储在客户端)

  2. 相对更安全(数据加密,可以避免 CSRF(跨站请求伪造))

  3. 扩展性更强(服务间可以共享增加服务节点更简单)

与cookie区别

cookie是自动携带的(浏览器自动携带上),而token是手动携带

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

it-Mrxie-天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值