From 608f4bd5ff1a0024c04af0973b20ed360d1d16a0 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 09 Nov 2021 11:34:52 +0800
Subject: [PATCH] fix
---
zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java | 34 ++++++++++++++--------------------
1 files changed, 14 insertions(+), 20 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java b/zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java
index 4fe5642..cb284a7 100644
--- a/zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java
+++ b/zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java
@@ -2,8 +2,6 @@
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.ObjectMapper;
-import com.matrix.component.redis.RedisClient;
-import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.LogUtil;
@@ -11,8 +9,7 @@
import com.matrix.core.tools.StringUtils;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.dao.SysUsersDao;
-import com.matrix.system.hive.bean.SysVipInfo;
-import com.matrix.system.hive.dao.SysVipInfoDao;
+import com.matrix.system.common.init.LocalCache;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@@ -21,6 +18,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.util.Objects;
/**
* @author wzy
@@ -29,11 +27,9 @@
@Component
public class ApiUserLoginInterceptor implements HandlerInterceptor {
- @Autowired
- private RedisClient redisClient;
@Value("${login_private_key}")
- private String privateKey;
+ private String privateKey;
@Value("${evn}")
private String evn;
@@ -41,18 +37,18 @@
@Autowired
private SysUsersDao sysUsersDao;
- private final String TOKEN_HEADER = "Authorization";
- private final String TOKEN_START_WITH = "Bearer ";
+ private static final String TOKEN_HEADER = "Authorization";
+ private static final String TOKEN_START_WITH = "Bearer ";
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
- if ("dev".equals(evn)) {
- SysUsers sysUsers = sysUsersDao.selectById(1012L);
- request.getSession().setAttribute(MatrixConstance.LOGIN_KEY, sysUsers);
- return true;
- }
+// if ("dev".equals(evn)) {
+// SysUsers sysUsers = sysUsersDao.selectById(1022L);
+// request.getSession().setAttribute(MatrixConstance.LOGIN_KEY, sysUsers);
+// return true;
+// }
- String token = resolveToken(request);
+ String token = resolveToken(request,privateKey);
AjaxResult ajaxResult = new AjaxResult();
ajaxResult.setStatus(AjaxResult.STATUS_LOGIN_INVALID);
@@ -65,16 +61,14 @@
return false;
}
- String userStr = redisClient.getCachedValue(token);
-// redisClient.resetExpire(token);
- if (StringUtils.isBlank(userStr)) {
+ SysUsers sysUsers = LocalCache.get(token);
+ if (Objects.isNull(sysUsers)) {
ajaxResult.setInfo("login time out");
response.getWriter().write(new ObjectMapper().writeValueAsString(ajaxResult));
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
return false;
}
- SysUsers sysUsers = JSONObject.parseObject(userStr, SysUsers.class);
request.getSession().setAttribute(MatrixConstance.LOGIN_KEY, sysUsers);
return true;
}
@@ -95,7 +89,7 @@
* @param request
* @return
*/
- private String resolveToken(HttpServletRequest request) {
+ public static String resolveToken(HttpServletRequest request,String privateKey) {
String headToken = request.getHeader(TOKEN_HEADER);
String sb = request.getRequestURI();
--
Gitblit v1.9.1