前端-session、jwt
创始人
2025-06-01 22:54:58
0

目录:

 

(1)session

(2)jwt校检流程

(3)jwt签名原理

(4)css


(1)session

 

 

发送一个请求:

获取数据请求,没有携带sessionid:

 携带sessionid:

(2)jwt校检流程

session做用户登录验证

http请求时无状态的,需要发送多次请求,我们不希望每次请求都携带用户名和密码,我们只希望用户名和密码只验证一次,验证成功之后呢,我们把它登录成功的状态记录下来,在后续的请求里看看它有没有登录成功的标记,如果有我们就放行,让它让问受限的资源,没有的话再重新去验证用户名和密码

 用session实现登录的验证,对单体项目是合适的,当时你开发的是分布是的项目,那么session技术就有点不合适了,采而采用jwt来进行登录的验证:

 

发送请求,生成toncken: 

 校验toncken:

 (3)jwt签名原理

 从以上程式可以发现,在Java用Base64一点都不难,不用几行程式码就解决了!只是这个sun.mis c套件所提供的Base64功能,编码和解码的效率并不太好,而且在以后的Java版本可能就不被支援了,完全不建议使用。

 

以上的程式码看起来又比早期用sun.mis c套件还要更精简,效能实际执行起来也快了不少。缺点是需要引用Apache Commons Codec,很麻烦

 与sun.mis c套件和Apache Commons Codec所提供的Base64编解码器来比较的话,Java 8提供的Base64拥有更好的效能。实际测试编码与解码速度的话,Java 8提供的Base64,要比sun.mis c套件提供的还要快至少11倍,比Apache Commons Codec提供的还要快至少3倍。因此在Java上若要使用Base64,这个Java 8底下的java .util套件所提供的Base64类别绝对是首选!

 

tocken前面header和数据用了Base64进行了编码,我们在解码查看一下: 

 tocken具有安全性,是因为签名可以保证tocken数据不被篡改

当客户端继续把toncken发送给服务器的时候,能不能把tocken内容做一下修改,来欺骗服务器,

比如说zhang这个名字用户,只能做有限的操作,那么有admin这个用户,权限较大,能不能把tocken中内容这一部分做一下修改,来欺骗服务器呢?

发送请求的时候进行替换:

 

 

 

服务器校验失败:

 签名是根据前两部分和一个秘钥生成的签名,前面两部分是知道的但是秘钥我们是不知道的

校验的时候会根据内容的签名值,和它预先生成的签名值不一致就说明内容发生了篡改

(4)css

 

 

 

 

 

 

 

display属性:

 

 

template标签(模板标签):一开始并能没有在页面显示,他要结合js代码,js可以读到模板这段代码,动态的加到div标签中

 点击按钮:把form表单动态的加到out的div内

 

 

 

 

 

上一篇:linux入门---制作进度条

下一篇:没有了

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...