zhanghua
2023-09-08 7ef4892f9f24f941aca37e6b3991b808a0aca619
ycl-common/src/main/java/com/ycl/utils/JwtTokenUtil.java
@@ -96,7 +96,7 @@
     * @param userDetails 从数据库中查询出来的用户信息
     */
    public boolean validateToken(String token, UserDetails userDetails) {
        String username = getUserNameFromToken(token);
        String username = parseToken(token).getUsername();
        return username.equals(userDetails.getUsername()) && !isTokenExpired(token);
    }
@@ -174,6 +174,26 @@
        return false;
    }
    /**
     * 根据用户id,用户名生成token
     */
    public String generateToken(long userId, String username) {
        Map<String, Object> claims = new HashMap<>();
        AuthInfo authInfo = new AuthInfo();
        authInfo.setUserId(userId);
        authInfo.setUsername(username);
        claims.put(CLAIM_KEY_INFO, JSONObject.toJSONString(authInfo));
        claims.put(CLAIM_KEY_CREATED, new Date());
        return generateToken(claims);
    }
    /**
     * 根据token解析出AuthInfo
     * @param token
     * @return
     */
    public AuthInfo parseToken(String token) {
        AuthInfo authInfo = null;
        try {
@@ -187,18 +207,5 @@
            throw new ApiException(e.getMessage());
        }
        return authInfo;
    }
    /**
     * 根据用户id,用户名生成token
     */
    public String generateToken(long userId, String username) {
        Map<String, Object> claims = new HashMap<>();
        AuthInfo authInfo = new AuthInfo();
        authInfo.setUserId(userId);
        authInfo.setUsername(username);
        claims.put(CLAIM_KEY_INFO, JSONObject.toJSONString(authInfo));
        claims.put(CLAIM_KEY_CREATED, new Date());
        return generateToken(claims);
    }
}