Browse Source

token

release_toaliyun_real
xhxu 5 years ago
parent
commit
ff6dc34b95
3 changed files with 14 additions and 8 deletions
  1. +5
    -0
      mallinkCApi/src/main/java/com/iformall/aop/RedisCacheAspect.java
  2. +7
    -6
      mallinkCApi/src/main/java/com/iformall/resolver/LoginUserHandlerMethodArgumentResolver.java
  3. +2
    -2
      mallinkWebSocketServer/src/main/java/com/iformall/interceptor/AuthHandshakeInterceptor.java

+ 5
- 0
mallinkCApi/src/main/java/com/iformall/aop/RedisCacheAspect.java View File

@@ -3,8 +3,10 @@ package com.iformall.aop;


import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.iformall.annotation.RedisCache; import com.iformall.annotation.RedisCache;
import com.iformall.common.ErrorCode;
import com.iformall.domain.po.WxCUser; import com.iformall.domain.po.WxCUser;
import com.iformall.domain.po.base.BaseCUserEntity; import com.iformall.domain.po.base.BaseCUserEntity;
import com.iformall.exception.MallinkException;
import com.iformall.service.CUserTokenService; import com.iformall.service.CUserTokenService;
import com.iformall.utils.HashUtil; import com.iformall.utils.HashUtil;
import com.iformall.utils.RedisLock; import com.iformall.utils.RedisLock;
@@ -65,6 +67,9 @@ public class RedisCacheAspect {
if (StringUtils.isBlank(token)) { if (StringUtils.isBlank(token)) {
token = request.getParameter("token"); token = request.getParameter("token");
} }
if(StringUtils.isBlank(token) || "null".equals(token) || "undefined".equals(token)){
throw new MallinkException(ErrorCode.NET_TOKEN_EMPTY.getCode(),"token为空["+token+"]");
}
log.info("token>>>>>>>>>>>>>>>"+token); log.info("token>>>>>>>>>>>>>>>"+token);
String tenantId; String tenantId;
BaseCUserEntity cUser = null ; BaseCUserEntity cUser = null ;


+ 7
- 6
mallinkCApi/src/main/java/com/iformall/resolver/LoginUserHandlerMethodArgumentResolver.java View File

@@ -1,8 +1,10 @@
package com.iformall.resolver; package com.iformall.resolver;


import com.iformall.annotation.LoginUser; import com.iformall.annotation.LoginUser;
import com.iformall.domain.po.WxCUserBasicInfo;
import com.iformall.domain.po.base.BaseCUserEntity; import com.iformall.domain.po.base.BaseCUserEntity;
import com.iformall.service.CUserTokenService; import com.iformall.service.CUserTokenService;
import com.iformall.service.WxCUserBasicInfoService;
import com.iformall.utils.Constant; import com.iformall.utils.Constant;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.MethodParameter; import org.springframework.core.MethodParameter;
@@ -21,8 +23,9 @@ import org.springframework.web.method.support.ModelAndViewContainer;
*/ */
@Component @Component
public class LoginUserHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver { public class LoginUserHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver {

@Autowired @Autowired
private CUserTokenService cUserTokenService;
private WxCUserBasicInfoService wxCUserBasicInfoService;


@Override @Override
public boolean supportsParameter(MethodParameter parameter) { public boolean supportsParameter(MethodParameter parameter) {
@@ -32,15 +35,13 @@ public class LoginUserHandlerMethodArgumentResolver implements HandlerMethodArgu
@Override @Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer container, public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer container,
NativeWebRequest request, WebDataBinderFactory factory) throws Exception { NativeWebRequest request, WebDataBinderFactory factory) throws Exception {
//获取用户ID
Object object = request.getAttribute(Constant.LOGIN_USER_KEY, RequestAttributes.SCOPE_REQUEST);
//获取会员ID
Object object = request.getAttribute(Constant.LOGIN_MEMBER_KEY, RequestAttributes.SCOPE_REQUEST);
if(object == null){ if(object == null){
return null; return null;
} }


//获取用户信息
BaseCUserEntity user = cUserTokenService.getByToken((String)object);

WxCUserBasicInfo user = wxCUserBasicInfoService.getById((Long) object);
return user; return user;
} }
} }

+ 2
- 2
mallinkWebSocketServer/src/main/java/com/iformall/interceptor/AuthHandshakeInterceptor.java View File

@@ -47,8 +47,8 @@ public class AuthHandshakeInterceptor implements HandshakeInterceptor {
token = serverHttpRequest.getServletRequest().getParameter("token"); token = serverHttpRequest.getServletRequest().getParameter("token");
} }
//token为空 //token为空
if(StringUtils.isBlank(token)){
throw new MallinkException(ErrorCode.NET_TOKEN_EMPTY);
if(StringUtils.isBlank(token) || "null".equals(token) || "undefined".equals(token)){
throw new MallinkException(ErrorCode.NET_TOKEN_EMPTY.getCode(),"token为空["+token+"]");
} }


// 查询token信息 // 查询token信息


Loading…
Cancel
Save