1、远程调用丢失请求头
原因:feign会创建一个新的请求,没有任何请求头
解决:加feign拦截器,新requst会经过拦截器
@Config
Class FeignConfig {
@bean
public RequestInterceptor requestInterceptor(){
从旧请求拿到session
给新template 设置请求头
}
}
2、异步情况丢失上下文问题
原因:RequestContextHolder使用的ThreadLocal是单线程共享
解决:每个线程使用RequestContextHolder设置一次context