@Configuration
public class FeignRequestInterceptor implements RequestInterceptor {
public FeignRequestInterceptor() {
}
public void apply(RequestTemplate requestTemplate) {
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
String appkey = request.getHeader("appKey");
String traceId = request.getHeader("traceId");
String requestIp = RequestUtil.getRemoteIp(request);
String userAgent = request.getHeader("User-agent");
String contentType = request.getHeader("Content-Type");
requestTemplate.header("Content-Type", new String[]{contentType});
requestTemplate.header("User-agent", new String[]{userAgent});
requestTemplate.header("User-IP", new String[]{requestIp});
requestTemplate.header("traceId", new String[]{traceId});
requestTemplate.header("appKey", new String[]{appkey});
}