【SpringBoot深入浅出系列】SpringBoot之集成JWT实现token验证

本文详细介绍了JWT(JSON Web Token)的基本概念、使用优势以及何时使用。接着,通过一个SpringBoot项目实例展示了JWT的集成过程,包括创建项目、配置、实体类和JWT工具类的编写,以及登录控制器的实现,帮助读者理解JWT在实际应用中的验证流程。


一、JWT 是什么?

JWT(JSON Web Token)是一种开放标准 (RFC 7519),它定义了一种紧凑且独立的方式,用于将信息作为 JSON 对象在各方之间安全地传输。该信息可以进行验证和信任,因为它是经过数字签名的。JWT 可以使用密钥(使用 HMAC 算法)或使用 RSA 或 ECDSA 的公钥/私钥对进行签名。
通俗地说,JWT 的本质就是一个字符串,它是将用户信息保存到一个 Json 字符串中,然后进行编码后得到一个 JWT token,并且这个 JWT token 带有签名信息,接收后可以校验是否被篡改,所以可以用于在各方之间安全地将信息作为 Json 对象传输。

二、为什么使用 JWT?

基于 token 的认证方式相比传统的 session 认证方式更节约服务器资源,并且对移动端和分布式更加友好。具有如下优点:

1.支持跨域访问

cookie 是无法跨域的,而 token 由于没有用到 cookie(前提是将 token 放到请求头中),所以跨域后不会存在信息丢失问题。

2.无状态

token 机制在服务端不需要存储 session 信息,因为 token 自身包含了所有登录用户的信息,所以可以减轻服务端压力。

3.更适用CDN

可以通过内容分发网络请求服务端的所有资料。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

奔跑吧邓邓子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值