最近在搞java的服务器端,在项目里面使用了spring cloud 一个个坑填!
今天遇到一个坑:Feign远程调用,跳过网关gateway,网关数据丢失bug!记录下!
使用Feign配置重新添加header,根据自己项目来:
@Slf4j
@Configuration
public class FeignConfig implements RequestInterceptor {
@Override
public void apply(RequestTemplate requestTemplate) {
requestTemplate.header(名称,数据);
// 不知道为啥会丢失传递body数据:暂时不用
// HttpServletRequest servletRequest = xHttpUtil.getHttpServletRequest();
// Enumeration<String> headerNames = servletRequest.getHeaderNames();
// if (headerNames != null) {
// while (headerNames.hasMoreElements()) {
// String name = headerNames.nextElement();
// String values = servletRequest.getHeader(name);
// requestTemplate.header(name, values);
// }
// }
}
}