Springboot整合JWT封装工具类篇(二)
前言:这里是将Springboot整合JWT测试篇(一)封装成工具类
public class JWTUtils { //秘钥自己保管好 private static String SECRET = "token!Q@W3e4r"; /** * 生成token * @param map //传入payload * @return 返回token */ public static String getToken(Map<String,String> map){ JWTCreator.Builder builder = JWT.create(); map.forEach((k,v)->{ builder.withClaim(k,v); }); Calendar instance = Calendar.getInstance(); instance.add(Calendar.DATE,3);//默认3天过期 builder.withExpiresAt(instance.getTime());//指定过期时间 return builder.sign(Algorithm.HMAC256(SECRET)); } /** * 验证token * @param token * @return */ public static DecodedJWT verify(String token){ // 有任何验证异常,此处都会抛出 return JWT.require(Algorithm.HMAC256(SECRET)).build().verify(token); } /** * 获取token中payload数据 * @param token * @return */ public static Map<String, Claim> getPayloadFromToken(String token) { return JWT.require(Algorithm.HMAC256(SECRET)).build().verify(token).getClaims(); } }
标签:
后端
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~