From 3e2946b8bd06e81d633bf154da1eb84b3537d148 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 04 Feb 2021 10:31:02 +0800
Subject: [PATCH] modify
---
zq-erp/src/main/java/com/matrix/system/common/interceptor/ApiUserLoginInterceptor.java | 36 ++++++++++++++++++++++++++----------
1 files changed, 26 insertions(+), 10 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 f783a97..64dfd5e 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
@@ -10,6 +10,9 @@
import com.matrix.core.tools.RSAUtils;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@@ -30,14 +33,26 @@
private RedisClient redisClient;
@Value("${login_private_key}")
- private String privateKey;
+ private String privateKey;
- private final String TOKEN_HEADER = "Authorization";
- private final String TOKEN_START_WITH = "Bearer ";
+ @Value("${evn}")
+ private String evn;
+
+ @Autowired
+ private SysUsersDao sysUsersDao;
+
+ 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 {
- String token = resolveToken(request);
+ /*if ("dev".equals(evn)) {
+ SysUsers sysUsers = sysUsersDao.selectById(1012L);
+ request.getSession().setAttribute(MatrixConstance.LOGIN_KEY, sysUsers);
+ return true;
+ }*/
+
+ String token = resolveToken(request,privateKey);
AjaxResult ajaxResult = new AjaxResult();
ajaxResult.setStatus(AjaxResult.STATUS_LOGIN_INVALID);
@@ -51,7 +66,7 @@
}
String userStr = redisClient.getCachedValue(token);
- redisClient.resetExpire(token);
+// redisClient.resetExpire(token);
if (StringUtils.isBlank(userStr)) {
ajaxResult.setInfo("login time out");
response.getWriter().write(new ObjectMapper().writeValueAsString(ajaxResult));
@@ -80,23 +95,24 @@
* @param request
* @return
*/
- private String resolveToken(HttpServletRequest request) {
+ public static String resolveToken(HttpServletRequest request,String privateKey) {
String headToken = request.getHeader(TOKEN_HEADER);
- StringBuffer sb = request.getRequestURL();
+ String sb = request.getRequestURI();
if (StringUtils.isNotBlank(headToken) && headToken.startsWith(TOKEN_START_WITH)) {
// 去掉令牌前缀
String rsaToken = headToken.replace(TOKEN_START_WITH, "");
try {
- String decryptTokten = new String(RSAUtils.decryptByPrivateKey(rsaToken, privateKey));
+ String decryptToken = new String(RSAUtils.decryptByPrivateKey(rsaToken, privateKey));
- String[] s = decryptTokten.split("_");
+ String[] s = decryptToken.split("_");
if (s == null || s.length != 3) {
return "";
}
- if (!sb.toString().equals(s[2])) {
+ LogUtil.info("请求路径:{} -- {}", sb, s[2]);
+ if (!sb.equals(s[2])) {
return "";
}
--
Gitblit v1.9.1