具体的写法能够百度的到,简单说就是写一个RequestInterceptor的实现类收集到spring工厂,在其apply方法里,根据当前线程获取request,取出里面的token,放到参数RequestTemplate中。
它的原理,根据之前说的feign源码,在SynchronousMethodHandler的invoke--->executeAndDecode--->Request request = targetRequest(template)中,获取requestInterceptors,分别调用其apply(template)方法。
而这个requestInterceptors是FeignClientFactoryBean.feign----configureFeign----configureUsingConfiguration---builder.requestInterceptors,去spring工厂中收集RequestInterceptor