xiaoyong931011
2022-11-08 ebb201cdf81afa2e720e59862180b76b326fc483
src/main/java/cc/mrbird/febs/common/interceptor/LoginInterceptor.java
@@ -31,21 +31,33 @@
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println(request.getHeader(":path"));
        String headerToken = request.getHeader("key");
//        System.out.println(request.getHeader(":path"));
        if ("OPTIONS".equals(request.getMethod().toUpperCase())) {
            return true;
        }
        String headerToken = request.getHeader("token");
        if (StringUtils.isBlank(headerToken)) {
            responseUnAuth(response);
            return false;
        }
        String userJsonStr = redisUtils.getString(headerToken);
        String token = resolveToken(headerToken);
        if (token == null || AppContants.TIME_OUT.equals(token)) {
            responseUnAuth(response);
            return false;
        }
        String userJsonStr = redisUtils.getString(token);
        if (StringUtils.isBlank(userJsonStr)) {
            responseUnAuth(response);
            return false;
        }
        DappMemberEntity member = JSON.parseObject(userJsonStr, DappMemberEntity.class);
        request.getSession().setAttribute("member", member);
        String id = request.getSession().getId();
        return true;
    }
@@ -69,11 +81,11 @@
        try {
            RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
            String[] tokens = StrUtil.split(rsa.decryptStr(token, KeyType.PrivateKey), "_");
            if (verifyTokenExpired(Long.parseLong(tokens[1]))) {
//            if (verifyTokenExpired(Long.parseLong(tokens[1]))) {
                return tokens[0];
            } else {
                return AppContants.TIME_OUT;
            }
//            } else {
//                return AppContants.TIME_OUT;
//            }
        } catch (Exception e) {
            log.error("#解析token异常#", e);
            return null;
@@ -84,8 +96,16 @@
        boolean isDebug = false;
        if (!isDebug) {
            long currentTime = System.currentTimeMillis();
            return currentTime - time <= 10000;
            return currentTime - time <= 3600000;
        }
        return true;
    }
    public static void main(String[] args) {
        String token = "Xb3pSziGry+DwmaeZZGzKBA0U7pceLyhgUOUV4IQh7RmIvaC0La3u8xIzU6jJyViiB5UmdIbn2aYeUaAvagh8uFGn6Q2yzDKcogReqU4/8rrPu295AIGjazHsYhtA+QQaFQHS2lcuZnjaXr0gCyT51FVJoRAP0GNEmOKzD1FI5w=";
        RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
        String[] tokens = StrUtil.split(rsa.decryptStr(token, KeyType.PrivateKey), "_");
        System.out.print(tokens[0]);
        System.out.print(tokens[1]);
    }
}