JWT解决什么问题

JWT(JsonWebToken)是一种符合开放标准的站点通行证,用于解决HTTP协议无状态带来的用户认证问题。相对于基于Session的认证方式,JWT允许用户认证信息无需保存在服务端,从而减轻服务器内存负担并支持分布式系统的扩展,实现单点登录功能。其认证流程包括用户首次认证获取Token,之后携带Token进行请求,服务端验证Token有效性。

JWT解决分布式系统单点登录的问题

一、JWT是什么?

Json Web Token的首字母简写,符合JSON开放标准的站点通行证。

我们知道http请求协议是无状态的,意味着客户端用户每次请求时,必须带上用户身份信息,否则服务端不知道是谁发出的请求。

二、基于Session认证的局限性

1.session通常都是保存在服务端内存中,随着认证用户越来越多,服务端内存的开销明显增大,响应的性能下降。

2.因用户首次认证的信息保存在服务器内存中,用户再次请求时只能在原来的服务器上认证,这样就限制了多服务器负载均衡的能力,也就限制了分布式系统的扩展能力。

三、基于JWT认证的好处

用户的认证信息无需保留在服务端,意味着无需考虑用户登录了哪台服务器,这就为分布式应用系统的扩展提供了便利,同时也满足了单点登录的应用场景。

四、Token认证的流程如下

1.客户端用户首次认证时发送账号和密码到服务端;

2.服务端验证成功之后生成加密的token,并返回客户端保留;

3.客户端再次请求时需带上token,服务器校验;

4.服务端校验成功之后返回客户端请求的数据。

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

鸿花粉

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

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

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

打赏作者

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

抵扣说明:

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

余额充值