diff --git a/njcn-common/src/main/java/com/njcn/common/utils/JwtUtil.java b/njcn-common/src/main/java/com/njcn/common/utils/JwtUtil.java index e02de1b..a5d19bf 100644 --- a/njcn-common/src/main/java/com/njcn/common/utils/JwtUtil.java +++ b/njcn-common/src/main/java/com/njcn/common/utils/JwtUtil.java @@ -32,7 +32,7 @@ public class JwtUtil { */ private final static String JWT_ISS = "NJCN"; - public static String generateToken(String userId) { + public static String getAccessToken(String userId) { Map headers = new HashMap<>(); headers.put("typ", "JWT"); headers.put("alg", "HS256"); @@ -63,4 +63,17 @@ public class JwtUtil { public static void invalidateToken(String token) { JWT.of(token).setKey(SECRET.getBytes(StandardCharsets.UTF_8)).setPayload("exp", Instant.now().getEpochSecond()); } + + public static String getRefreshToken(String token) { + Map payload = JWTUtil.parseToken(token).getPayload().getClaimsJson(); + payload.put("exp", Instant.now().plusSeconds(ACCESS_EXPIRE * 7).getEpochSecond()); + return JWTUtil.createToken(payload, SECRET.getBytes(StandardCharsets.UTF_8)); + } + + public static void main(String[] args) { + String token = getAccessToken("123456"); + System.out.println(token); + System.out.println(parseToken(token)); + } + }