Spring Boot整合JWT快速入门教程

目录

前言

1. 什么是JWT

2. JWT解决的问题

3. JWT原理 

4. 快速入门

1. jar包

2. JWT工具类

3. 自定义注解

4. 拦截器

5. controller层

6. 测试

6.1 直接访问

6.2 先登录,再访问

5. 总结


前言

        小编通过网上的资源,自学spring boot整合JWT,但发现网上的大部分资源对新手入门都不是太友好~。所以本着复杂问题简单化的思想,写了这篇快速入门的文章,即是个人的学习笔记,又是帮助大家入门的查考。如有错误之处,请大家指出。

1. 什么是JWT

        JWT全称是:json web token。它将用户信息加密到 token 里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证 token 的正确性,只要正确即通过验证

2. JWT解决的问题

        传统的web服务用户登录的原理是,服务器将相关的用户信息储存到session中,客户端则储存session_id。当客户端发送请求到服务器时,请求会带有session_id,服务器根据session_id,找到对应的session,然后获取里面的用户信息,最后进行比对,从而验证用户是否已经登录。

        但是这种解决方案只适用于只有一台服务器提供服务,无法便捷地适用于服务器群集或面向服务的跨域体系结构的项目。JWT正好可以弥补这个弊端。  

        简单的来说,JWT解决了跨域身份验证问题

3. JWT原理 

        服务器在验证完用户信息后,会生成一个记录登录信息的JSON数据,并发送到客户端。每当客户端发送请求时,都会带有这个JSON数据,服务器会根据这个JSON数据来识别用户。从而实现跨域身份验证问题。

4. 快速入门

1. jar包

<dependency>
    <groupId>com.auth0</groupId>
    <artifactId>java-jwt</artifactId>
    <version>3.10.3</version>
</dependency>

2. JWT工具类

public class JwtUtil {
    /**
     * 生命周期为5分钟,单位是毫秒
     */
    private static final long EXPIRE_TIME = 5 * 60 * 1000;
    /**
     * 密钥
     */
    private static final String SECR
  • 25
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值