ADD file via upload

main
pjhmizn49 1 year ago
parent dc970724ce
commit f3a56c77f3

@ -0,0 +1,57 @@
package com.example.flower.unit;
import com.alibaba.fastjson.JSONObject;
import com.auth0.jwt.JWT;
import io.jsonwebtoken.*;
import java.util.Date;
import java.util.UUID;
public class JWTUtil {
private static long time = 1000*60*60*24;
private static String signature = "flower";
//创建token(示例)
public static String createToken(int id,int role){
JwtBuilder jwtBuilder = Jwts.builder();
String jwtToken = jwtBuilder
//header
.setHeaderParam("typ","JWT")
.setHeaderParam("alg","HS256")
//payload
.claim("id",id)
.claim("role",role)
.setSubject("admin-test")
.setExpiration(new Date(System.currentTimeMillis()+time))
.setId(UUID.randomUUID().toString())
//signature
.signWith(SignatureAlgorithm.HS256,signature)
.compact();
return jwtToken;
}
//检查token是否有效
public static boolean checkToken(String token){
if(token == null){
return false;
}
try {
Jwts.parser().setSigningKey(signature).parseClaimsJws(token);
}catch (ExpiredJwtException e){
return false;
}
return true;
}
//token认证失败
public static void checkTokenFailed(JSONObject jsonObject){
jsonObject.put("code",401 );
jsonObject.put("msg","token认证异常!" );
jsonObject.put("data",null );
}
//解析token,获取body信息
public static Claims getBodyByToken(String token){
Jws<Claims> claimsJws = Jwts.parser().setSigningKey(signature).parseClaimsJws(token);
return claimsJws.getBody();
}
}
Loading…
Cancel
Save