/**
* @Author DiamondLove
* @Date 2021/1/11 22:37
* @Version 1.0
*/
public class JWTUtils {
private static String TOKEN = "token1314"; //加盐
/**
* 生成token header.payload.sing
* @param map
* @return
*/
public static String getToken(Map<String,String> map){
JWTCreator.Builder builder = JWT.create();
Calendar instance = Calendar.getInstance();
instance.add(Calendar.DATE,7);//默认7天
//创建jwt builder
map.forEach((k,v) ->{
builder.withClaim(k,v);
});
String token = builder.withExpiresAt(instance.getTime())//指定令牌过期时间
.sign(Algorithm.HMAC256(TOKEN));//sign
return token;
}
/**
* 验证token 合法性
*/
public static void verify(String token){
JWT.require(Algorithm.HMAC256(TOKEN)).build().verify(token);
}
/**
* 获取token信息
* System.out.println(verify.getClaim("username").asString());
* System.out.println(verify.getClaim("admin").asString());
* System.out.println("过期时间:"+verify.getExpiresAt());
*/
public static DecodedJWT getTokenInfo(String token){
return JWT.require(Algorithm.HMAC256(TOKEN)).build().verify(token);
}
}
JWTUtils封装
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- PyQT5 封装独立程序,优先推荐 pyinstaller,而非 py2app 或者 py2exe。事实上,PyI...
- vue3+ts+element 从新封装el-link 修改默认参数 以及跳转路由使用vueRouter跳...