В наших микросервисах мы используем Feign для связи между службами, у нас есть специальный RequestInterceptor для обеспечения безопасности и прикрепляем наш токен JWT к каждому запросу.
Я хотел бы использовать Feign для вызовов на 3-йсторонний сервис за пределами моей организации.
Допустим, мой FeignClient выглядит следующим образом.
@FeignClient(name = "ThirdPartyClient", url = "https://api.thirdparty.com/", configuration = ThirdPartyConfiguration.class)
public interface ThirdPartyClient { ... }
Проблема в том, что этот сторонний клиент также пройдет через список RequestInterceptors и получит ту же аутентификациюзаголовок используется между моими микросервисами. Я хотел бы обойти список по умолчанию RequestInterceptors для установки определенного.
Я попытался переопределить конфигурацию по умолчанию, как описано в doc , мне удается добавить определенный RequestInterceptorно все еще проходит через список, и поэтому я получаю все заголовки в запросе.
@Configuration
public class ThirdPartyConfiguration {
@Bean
public RequestInterceptor requestInterceptor() {
return requestTemplate -> {
requestTemplate.header("Authorization", "HEADER_VALUE");
};
}
}