/**
* @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封装
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- PyQT5 封装独立程序,优先推荐 pyinstaller,而非 py2app 或者 py2exe。事实上,PyI...
- vue3+ts+element 从新封装el-link 修改默认参数 以及跳转路由使用vueRouter跳...