xuhy
2025-02-13 ede2289eb8fb676632a7783fece32507f8bd3dd7
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java
@@ -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)
@@ -204,6 +204,21 @@
            refreshToken(loginUser);
        }
    }
    /**
     * 小程序验证令牌有效期,相差不足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);
        }
    }
    /**
     * 刷新令牌有效期