原因:feign远程调用,创建的request没有请求头。
解决:使用feign远程调用的请求拦截器
@Bean
public RequestInterceptor requestInterceptor() {
return new RequestInterceptor() {
@Override
public void apply(RequestTemplate requestTemplate) {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest(); // 老 request
requestTemplate.header("Cookie", request.getHeader("Cookie")); // 新request
}
};
}