xuhy
2025-03-07 ca8c83c771495363c46b6cfe56a599dfbdbe70d2
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java
@@ -72,9 +72,9 @@
     *
     * @return 用户信息
     */
    public LoginUser getLoginUserApplet()
    public LoginUserApplet getLoginUserApplet()
    {
        return getLoginUser(ServletUtils.getRequest());
        return getLoginUserApplet(ServletUtils.getRequest());
    }
    /**
     * 获取用户身份信息
@@ -108,7 +108,7 @@
     *
     * @return 用户信息
     */
    public LoginUser getLoginUserApplet(HttpServletRequest request)
    public LoginUserApplet getLoginUserApplet(HttpServletRequest request)
    {
        // 获取请求携带的令牌
        String token = getToken(request);
@@ -120,7 +120,7 @@
                // 解析对应的权限以及用户信息
                String uuid = (String) claims.get(Constants.LOGIN_USER_APPLET_KEY);
                String userKey = getTokenKey(uuid);
                LoginUser user = redisCache.getCacheObject(userKey);
                LoginUserApplet user = redisCache.getCacheObject(userKey);
                return user;
            }
            catch (Exception e)
@@ -205,6 +205,29 @@
        }
    }
    public boolean verifyToken(String token)
    {
        Claims claims = parseToken(token);
        return true;
    }
    /**
     * 小程序验证令牌有效期,相差不足20分钟,自动刷新缓存
     *
     * @param loginUser
     * @return 令牌
     */
    public void verifyTokenApplet(LoginUserApplet loginUser)
    {
        long expireTime = loginUser.getExpireTime();
        long currentTime = System.currentTimeMillis();
        if (expireTime - currentTime <= MILLIS_MINUTE_TEN)
        {
            refreshTokenApplet(loginUser);
        }
    }
    /**
     * 刷新令牌有效期
     *