Преглед изворни кода

Merge branch 'release/v2.1.2' into 'develop'

fix: 修复获取从头文件令牌

See merge request dcuc-tjdsj/app-service!36
黄资权 пре 4 година
родитељ
комит
24b516cc9f

+ 12 - 9
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/business/impl/ResourceBusiness.java

@@ -40,6 +40,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestAttributes;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
 
@@ -62,10 +63,6 @@ public class ResourceBusiness implements IResourceBusiness {
 
     Logger logger = LoggerFactory.getLogger(ResourceBusiness.class);
 
-    /**
-     * 应用令牌错误信息
-     */
-    public static final String APP_TOKEN_ERROR_MESSAGE = "0302 令牌验证执行失败";
     @Autowired
     private IResourceService resourceService;
     @Autowired
@@ -837,9 +834,6 @@ public class ResourceBusiness implements IResourceBusiness {
     private List<Header> getHeaders(BusSendReqVO busSendReqVO) {
         logger.info("getHeaders >>> {}", busSendReqVO);
 
-        ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
-        HttpServletRequest request = servletRequestAttributes.getRequest();
-
         List<Header> heardList = new ArrayList<>();
 
         Header busSraIdHeader = new BasicHeader("bus_sra_id", busSendReqVO.getBusSraId());
@@ -854,9 +848,18 @@ public class ResourceBusiness implements IResourceBusiness {
 
         String voUserToken = busSendReqVO.getUserToken();
         String voAppToken = busSendReqVO.getAppToken();
+
         if (StrUtil.isBlank(voUserToken) && StrUtil.isBlank(voAppToken)) {
-            String userToken = request.getHeader(Constants.USER_TOKEN);
-            String appToken = request.getHeader(Constants.APP_TOKEN);
+
+            RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
+            String userToken = "";
+            String appToken = "";
+            if (requestAttributes != null) {
+                ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) requestAttributes;
+                HttpServletRequest request = servletRequestAttributes.getRequest();
+                userToken = request.getHeader(Constants.USER_TOKEN);
+                appToken = request.getHeader(Constants.APP_TOKEN);
+            }
 
             logger.info("getHeaders >>> request userToken:{},appToken:{}", userToken, appToken);
             if (StrUtil.isNotBlank(userToken)) {