【fix sonar】FeignConfig文件

This commit is contained in:
梁琦涛
2023-03-08 10:22:40 +08:00
parent f1df05f9d9
commit 4ea6cdc58f
@@ -1,20 +1,25 @@
package com.jero.config; package com.jero.config;
import java.io.IOException; import com.alibaba.fastjson.JSON;
import java.util.ArrayList; import com.alibaba.fastjson.serializer.SerializerFeature;
import java.util.Arrays; import com.alibaba.fastjson.support.config.FastJsonConfig;
import java.util.List; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import java.util.SortedMap; import com.alibaba.fastjson.support.springfox.SwaggerJsonSerializer;
import com.jero.common.config.mqtoken.UserTokenContext;
import javax.servlet.http.HttpServletRequest;
import com.jero.common.constant.CommonConstant; import com.jero.common.constant.CommonConstant;
import com.jero.common.util.DateUtils; import com.jero.common.util.DateUtils;
import com.jero.common.util.PathMatcherUtil; import com.jero.common.util.PathMatcherUtil;
import com.jero.common.config.mqtoken.UserTokenContext;
import com.jero.config.sign.interceptor.SignAuthConfiguration; import com.jero.config.sign.interceptor.SignAuthConfiguration;
import com.jero.config.sign.util.HttpUtils; import com.jero.config.sign.util.HttpUtils;
import com.jero.config.sign.util.SignUtil; import com.jero.config.sign.util.SignUtil;
import feign.Feign;
import feign.Logger;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import feign.codec.Decoder;
import feign.codec.Encoder;
import feign.form.spring.SpringFormEncoder;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.ObjectFactory; import org.springframework.beans.factory.ObjectFactory;
import org.springframework.boot.autoconfigure.AutoConfigureBefore; import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -30,19 +35,12 @@ import org.springframework.http.MediaType;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import com.alibaba.fastjson.JSON; import javax.servlet.http.HttpServletRequest;
import com.alibaba.fastjson.serializer.SerializerFeature; import java.io.IOException;
import com.alibaba.fastjson.support.config.FastJsonConfig; import java.util.ArrayList;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import java.util.Arrays;
import com.alibaba.fastjson.support.springfox.SwaggerJsonSerializer; import java.util.List;
import java.util.SortedMap;
import feign.Feign;
import feign.Logger;
import feign.RequestInterceptor;
import feign.codec.Decoder;
import feign.codec.Encoder;
import feign.form.spring.SpringFormEncoder;
import lombok.extern.slf4j.Slf4j;
@ConditionalOnClass(Feign.class) @ConditionalOnClass(Feign.class)
@@ -56,6 +54,16 @@ public class FeignConfig {
return requestTemplate -> { return requestTemplate -> {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (null != attributes) { if (null != attributes) {
filterRequest(requestTemplate, attributes);
}else{
String token = UserTokenContext.getToken();
log.debug("Feign request token: {}", token);
requestTemplate.header(CommonConstant.X_ACCESS_TOKEN, token);
}
};
}
private void filterRequest(RequestTemplate requestTemplate, ServletRequestAttributes attributes) {
HttpServletRequest request = attributes.getRequest(); HttpServletRequest request = attributes.getRequest();
log.debug("Feign request: {}", request.getRequestURI()); log.debug("Feign request: {}", request.getRequestURI());
// 将token信息放入header中 // 将token信息放入header中
@@ -73,7 +81,7 @@ public class FeignConfig {
log.info(requestTemplate.path()); log.info(requestTemplate.path());
log.info(requestTemplate.method()); log.info(requestTemplate.method());
String queryLine = requestTemplate.queryLine(); String queryLine = requestTemplate.queryLine();
if(queryLine!=null && queryLine.startsWith("?")){ if(queryLine.startsWith("?")){
queryLine = queryLine.substring(1); queryLine = queryLine.substring(1);
} }
log.info(queryLine); log.info(queryLine);
@@ -90,14 +98,7 @@ public class FeignConfig {
e.printStackTrace(); e.printStackTrace();
} }
} }
}else{
String token = UserTokenContext.getToken();
log.debug("Feign request token: {}", token);
requestTemplate.header(CommonConstant.X_ACCESS_TOKEN, token);
} }
};
}
/** /**