From 17c94afc50e7957b8fd98413cdc9cbbdc4c7967a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Thu, 18 Jul 2024 17:41:19 +0800 Subject: [PATCH] 逻辑 --- src/main/java/cc/mrbird/febs/common/interceptor/DappInterceptor.java | 34 ++++++++++++++++++++-------------- 1 files changed, 20 insertions(+), 14 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/common/interceptor/DappInterceptor.java b/src/main/java/cc/mrbird/febs/common/interceptor/DappInterceptor.java index cfb580c..c800926 100644 --- a/src/main/java/cc/mrbird/febs/common/interceptor/DappInterceptor.java +++ b/src/main/java/cc/mrbird/febs/common/interceptor/DappInterceptor.java @@ -2,6 +2,7 @@ import cc.mrbird.febs.common.contants.AppContants; import cc.mrbird.febs.common.entity.FebsResponse; +import cc.mrbird.febs.common.properties.SystemProperties; import cc.mrbird.febs.common.utils.LoginUserUtil; import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.common.utils.SpringContextUtil; @@ -13,10 +14,8 @@ import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.web.servlet.HandlerInterceptor; -import org.web3j.crypto.Hash; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -33,6 +32,8 @@ private final DappMemberDao dappMemberDao = SpringContextUtil.getBean(DappMemberDao.class); private final RedisUtils redisUtils = SpringContextUtil.getBean(RedisUtils.class); + private SystemProperties systemProperties = SpringContextUtil.getBean(SystemProperties.class); + @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { if ("OPTIONS".equals(request.getMethod().toUpperCase())) { @@ -41,7 +42,6 @@ String headAddress = request.getHeader("address"); String key = request.getHeader("key"); String path = request.getServletPath().replace("/dapi", ""); - log.info("进入拦截:{}, {}, {}", headAddress, path, key); String chain = request.getHeader("chain"); if (StrUtil.isBlank(headAddress) || StrUtil.isBlank(key)) { @@ -49,19 +49,21 @@ return false; } - Map<Object, Object> signKey = redisUtils.hmget(AppContants.REDIS_KEY_SIGN); - Object signObj = signKey.get(headAddress); + if (!systemProperties.isDebug()) { + Map<Object, Object> signKey = redisUtils.hmget(AppContants.REDIS_KEY_SIGN); + Object signObj = signKey.get(headAddress); - if (signObj == null) { - responseUnAuth(response); - return false; - } - String sign = (String) signObj; + if (signObj == null) { + responseUnAuth(response); + return false; + } + String sign = (String) signObj; - String calKey = LoginUserUtil.sha3(sign + path + headAddress).replace("0x", ""); - if (!calKey.equals(key)) { - responseUnAuth(response); - return false; + String calKey = LoginUserUtil.sha3(sign + path + headAddress).replace("0x", ""); + if (!calKey.equals(key)) { + responseUnAuth(response); + return false; + } } DappMemberEntity memberEntity = dappMemberDao.selectByAddress(headAddress, null); @@ -69,6 +71,10 @@ responseUnAuth(response); return false; } + if(AppContants.INT_FLAG_Y != memberEntity.getAccountStatus()){ + responseUnAuth(response); + return false; + } request.getSession().setAttribute("member", memberEntity); return true; -- Gitblit v1.9.1