绕过一个FeignClient的RequestInterceptor的全局列表

时间:2019-10-31 09:14:40

标签: spring-cloud-feign feign openfeign

在我们的微服务中,我们使用Feign在服务之间进行通信,我们有专用的RequestInterceptor来处理安全性并将JWT令牌附加到每个请求。

我想使用Feign拨打组织外部的第三方服务。

让我的FeignClient看起来像这样。

@FeignClient(name = "ThirdPartyClient", url = "https://api.thirdparty.com/", configuration = ThirdPartyConfiguration.class)
public interface ThirdPartyClient { ... }

问题在于,该第三方客户端也将遍历RequestInterceptor列表,并获得在我的微服务之间使用的相同身份验证标头。 我想绕过RequestInterceptor的默认列表来设置特定列表。

我尝试按照doc中所述覆盖默认配置,我设法添加了特定的RequestInterceptor,但仍然遍历列表,因此我在请求中获得了所有标头。

@Configuration
public class ThirdPartyConfiguration {

    @Bean
    public RequestInterceptor requestInterceptor() {
        return requestTemplate -> {
            requestTemplate.header("Authorization", "HEADER_VALUE");
        };
    }
}

0 个答案:

没有答案