• Springboot实现jwt的token验证(超简单)


    超简单的jwt验证token,直接复制粘贴即可使用!

    一、添加依赖

    1. <dependency>
    2. <groupId>com.auth0groupId>
    3. <artifactId>java-jwtartifactId>
    4. <version>3.14.0version>
    5. dependency>

    二、新建一个TokenUtil.class工具类

    1. package com.example.springboot.utils;
    2. import com.auth0.jwt.JWT;
    3. import com.auth0.jwt.algorithms.Algorithm;
    4. import com.auth0.jwt.interfaces.DecodedJWT;
    5. import java.util.Calendar;
    6. import java.util.HashMap;
    7. /**
    8. * JWT token加解密工具类
    9. */
    10. public class TokenUtils {
    11. private static String key = "jweijo1231ojiSDJOIA23Ssdii";// 密钥签名
    12. private static Integer end_day = 7;// 密钥过期天数
    13. /**
    14. * token加密
    15. * @param id 账号
    16. * @return
    17. */
    18. public static String signToken(String id){
    19. HashMap map = new HashMap<>();
    20. // 指定令牌的过期时间,这里是【7天】后令牌token失效
    21. Calendar instance = Calendar.getInstance();
    22. instance.add(Calendar.DAY_OF_WEEK, end_day);
    23. // 生成token
    24. String token = JWT.create()
    25. .withHeader(map) // header可以不写,因为默认值就是它
    26. .withClaim("user", id) //payload
    27. .withExpiresAt(instance.getTime()) // 指定令牌的过期时间
    28. .sign(Algorithm.HMAC256(key));//签名
    29. return token;
    30. }
    31. /**
    32. * 验证token合法性
    33. * @param token
    34. * @return
    35. */
    36. public static DecodedJWT verify(String token) {
    37. return JWT.require(Algorithm.HMAC256(key)).build().verify(token);
    38. }
    39. /**
    40. * 获取token真实内容
    41. * @param token
    42. * @return
    43. */
    44. public static DecodedJWT getTokenInfo(String token){
    45. DecodedJWT verify = JWT.require(Algorithm.HMAC256(key)).build().verify(token);
    46. return verify;
    47. }
    48. }

  • 相关阅读:
    2022-09-16 第五组 张明敏 学习笔记
    进程地址空间详解
    JDK安装教程
    Bracket Sequence ——卡特兰数
    【爬虫】Java爬虫爬取某招聘网站招聘信息
    阿里云 动态ddns
    vue3项目创建步骤,以及项目运行失败的原因和解决方法
    Java8 stream处理List,Map总结
    MySQL基本操作
    Element-ui 动态tabs实战
  • 原文地址:https://blog.csdn.net/weixin_42966151/article/details/133356873