标签:请求 JWT TOKEN pyhton SESSIONID session 服务端 客户端
一、SESSION请求
SESSION:它是存储在服务端的
1、SESSION请求的流程
1)客户端输入账户和密码,登录成功,在服务端生成一个SESSIONID同时存储在服务端(DB or Redis)
2)服务端把生成的SESSIONID通过响应头中的Set-Cookie返回给客户端
3)再系统下个请求中,比如查看个人主页,发送个人主页请求的时候,会在请求头中的Cookie中带上服务端返回来的SESSIONID发送给服务端
4)服务端接收到客户端发送过来的SESSIONID和存储在自己本地的SESSIONID之间会做一个对比
5)如果一直,允许访问个人主页
6)如果不一致,就重定向到登录的页面
2、SESSION请求的流程图
3、SESSIONID的查找
以威客网为例,进行登录,在login中找到set-cookie
找到cookie,将set-cookie与cookie做对比,相同的数据就是SESSIONID。
二、TOKEN请求
1、概念
TOKEN:本质上是SESSION原理来实现的,我们一般称呼它为令牌。前后端分类的产品使用的都是TOKEN。目前TOKE N使用的技术一般是JWT。
2、JWT介绍
Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。
3、TOKEN的特点
1)每次登录成功后返回的token是不一样是的,是一个随机的字符串
2)TOKEN一般通过响应数据返回给客户端
3)客户端发送请求给服务端,是通过请求头里面的Authorization: JWT TOKEN
4、TOKEN请求的流程图
5、token的请求流程实例
以风暴平台为例,登录风暴平台
通过对比auth/中的TOKEN和index中response header中的JWT数据做对比,两者相同。
三、思考
1、为什么需要获取网络请求?
获取网络请求就能够得到HTTP协议的组成部分
2、怎么获取网络请求?
使用浏览器的调试模式中的network就可以获取 2、charles/fildder工具来获取网络请求
3、API测试有必要吗?
有必要,为了验证客户端与服务端数据传输的正确性。
标签:请求,JWT,TOKEN,pyhton,SESSIONID,session,服务端,客户端 来源: https://www.cnblogs.com/cch6842/p/16499478.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。