public class JwtUtil {/*** 过期时间一天,正式运行时修改为30分钟*/private static final long EXPIRE_TIME = 86400000;/*** token私钥*/private static final String TOKEN_SECRET = "8a80c107466a0b9c01466cfd0003";/*** 校验token是否正确** @param token 密钥* @return 是否正确*/public static boolean verify(String token) {try {Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);JWTVerifier verifier = JWT.require(algorithm).build();DecodedJWT jwt = verifier.verify(token);return true;} catch (Exception exception) {return false;}}/*** 获得token中的信息无需secret解密也能获得** @return token中包含的用户名*/public static String getuimUserid(String token) {try {DecodedJWT jwt = JWT.decode(token);return jwt.getClaim("uimUserid").asString();} catch (JWTDecodeException e) {return null;}}/*** 获取登陆用户ID** @param token* @return*/public static String getuimUserName(String token) {try {DecodedJWT jwt = JWT.decode(token);return jwt.getClaim("uimUserName").asString();} catch (JWTDecodeException e) {return null;}}/*** 生成签名执行体* @param username 用户名* @return 加密的token*/public static String sign(String uimUserid,String uimUserName) {try {// 过期时间Date date = new Date(System.currentTimeMillis() + EXPIRE_TIME);// 私钥及加密算法Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);// 设置头部信息Map<String, Object> header = new HashMap<>(2);header.put("typ", "JWT");header.put("alg", "HS256");// 附带uimUserid,uimUserName信息,生成签名return JWT.create().withHeader(header).withClaim("uimUserid", uimUserid).withClaim("uimUserName",uimUserName).withExpiresAt(date).sign(algorithm);} catch (Exception e) {return null;}}
}

解析Token工具类相关推荐

  1. java 兼容excel_Java解析Excel工具类(兼容xls和xlsx)

    依赖jar org.apache.poi poi-ooxml 4.0.1 ExcelUtils.java package javax.utils; import java.io.File; impor ...

  2. springboot 中的 文件、短信、邮件、token 工具类

    1.文件工具类 主要功能为文件上传,结合阿里云 OSS 对象存储.上传文件类型包括文档.音频.视频.图片等,可自定义文件夹,文件未加密.自动生成文件名,文件上传成功后返回原文件名.新文件名.文件大小. ...

  3. jsqlparser解析SQL工具类(转载)

    JSQLParser官网地址:http://jsqlparser.sourceforge.net/ JSQLParserGitHub地址:https://github.com/JSQLParser/J ...

  4. Java解析Excel工具类(兼容xls和xlsx)

    依赖jar <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml< ...

  5. java json帮助类_java 写一个JSON解析的工具类

    上面是一个标准的json的响应内容截图,第一个红圈"per_page"是一个json对象,我们可以根据"per_page"来找到对应值是3,而第二个红圈&quo ...

  6. java解析xml工具类_通过dom4j解析XML字符串XMLDocUtil工具类转换为XML文档及获取指定根节点及指定节点路径内容代码示例...

    一.前言 通过dom4j解析XML文档的XMLDocUtil工具类,进行解析xml字符串为Document文档对象.获取根节点元素路径内容getRootElement.获取唯一路径节点的值getSin ...

  7. java实现二维码的生成和解析包含工具类

    1.下载jar包( jdk1.7) 链接:https://pan.baidu.com/s/1LVq_zGsp_Po8V456h1TVmA 提取码:vqyd 2.工具类Utils.java packag ...

  8. Excel解析easyexcel工具类

    本文使用基于阿里的easyexcel编写的工具类对xls后缀的Excel文件(即03版)读取并写成xlsx后缀的Excel文件(即07版),中间转换过程使用String二维数组和对象列表两种形式. e ...

  9. 抖音视频解析的工具类

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 一.一个解析抖音分析链接的工具类 import java.io.IOException; import java.util.HashM ...

最新文章

  1. 技术图文:Matlab VS. Numpy 常见矩阵
  2. 什么叫白户,白户能贷款吗?
  3. OpenCV文档阅读笔记-inRange官方解析及实例
  4. python输入姓名_Python 用户输入用户名,进行验证
  5. CSS布局讲解-float浮动布局使用
  6. centos下java编程工具_centos下安装JAVA开发工具(4)------Redis
  7. ado控件连接mysql_VB利用ADO控件连接access数据库
  8. RSA算法生成2048位公私钥
  9. Wincc使用.net控件将锐浪报表Grid++Report6嵌入
  10. Unity CityEngine 根据地图中建筑矢量数据批量建模
  11. WIN10在服务器上找不到共享打印机,win10搜索不到共享打印机怎么办
  12. 合并果子问题(贪心算法)
  13. excel冻结窗口_excel表格怎么来冻结窗口同时冻结行和列
  14. 天狮集团云函数实践:自定义业务逻辑实现跨境电商全球直播
  15. 什么时候线程会进入Waitting状态?
  16. 性能测试有哪些我们测试员必须要掌握的知识点?
  17. 读取pb模型进行预测
  18. 【五一创作】Qt quick基础1(包含基本元素Text Image Rectangle的使用)
  19. Bandwagon的配置记录(二) —— ftp文件传输
  20. Geophysical research letters 进度2

热门文章

  1. Linux命令-查看用户的UID和GID
  2. 【数理统计】F检验与单因素方差分析
  3. jQuery之图片显示篇A
  4. 流媒体协议之WebRTC实现p2p视频通话(二)
  5. nginx php .htaccess,Linux下nginx支持.htaccess文件实现伪静态的方法
  6. python发送esc_使用win32prin将一行文本发送到Python中的ESC/POS打印机
  7. 格隆汇笔记-黄勇演讲
  8. kill -9 进程 杀掉僵死进程
  9. sja1000 CAN驱动学习、调试记录(基于PeliCan Mode)
  10. 手把手教你做主成分分析