| | |
| | | * |
| | | * @return 用户信息 |
| | | */ |
| | | public LoginUser getLoginUserApplet() |
| | | public LoginUserApplet getLoginUserApplet() |
| | | { |
| | | return getLoginUser(ServletUtils.getRequest()); |
| | | return getLoginUserApplet(ServletUtils.getRequest()); |
| | | } |
| | | /** |
| | | * 获取用户身份信息 |
| | |
| | | * |
| | | * @return 用户信息 |
| | | */ |
| | | public LoginUser getLoginUserApplet(HttpServletRequest request) |
| | | public LoginUserApplet getLoginUserApplet(HttpServletRequest request) |
| | | { |
| | | // 获取请求携带的令牌 |
| | | String token = getToken(request); |
| | |
| | | // 解析对应的权限以及用户信息 |
| | | 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) |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 刷新令牌有效期 |
| | | * |