以微信公众号爬虫为例,谈谈对session、cookie和token认证的理解

为什么需要这些认证

我们通过浏览器访问多数网站,本质上都可以理解为客户端(用户)和服务端(网站)之间的一次遵循http协议的请求和应答,比如:把a页面给我(返回a.html),删除b图片(删除b.jpg)。但是http协议本身是无状态的,也就是说我们每一次向网站发送请求,服务器都并不知道我们是谁、是否请求过、有何偏好(共享数据),所以需要一种验证机制将我们的所有请求关联起来。

session和cookie

在http协议之上,通过cookie实现了持久的会话,这个会话便称为session;
session是存储在服务端、用来验证用户身份的状态数据,具有唯一标识sessionId;
cookie是存储在客户端的用户身份数据,浏览器会自动加入服务端提供的sessionId。

验证流程:
1、客户端向服务端发送http请求;
2、服务端接受请求,建立一个session然后向客户端发送应答,其中应答的响应头Set-Cookie中包含sessionId;
3、客户端再次发送请求,如果之前有收到set-Cookie会将Cookie一起提交;
4、服务端再次接受请求,分解Cookie并验证消息,核对成功后发送应答。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值