Проблема регистрации входящего и исходящего трафика WebClient ⇐ JAVA
Проблема регистрации входящего и исходящего трафика WebClient
У меня проблема с WebClient. Я использую Http-интерфейс с WebClient, и мне необходимо регистрировать входящий/исходящий трафик в базу данных. Я написал этот фильтр журнала, но некоторые службы выдают NullPointerException. Я попробовал подписаться вместо блокировать, бот не работает. Я пробовал еще много вещей, но не могу решить эту проблему. Вы можете мне помочь?
Вот мой фильтр;
public ExchangeFilterFunction logFilter() { возврат (запрос, следующий) -> следующий.обмен(запрос) .publishOn(Schedulers.boundedElastic()) .doOnNext( клиентОтвет -> { клиентОтвет .bodyToMono(String.class) .doOnNext( clientResponseAsString -> { пытаться { // сохраняем запрос и ответ в базу данных } catch (Исключение е) { журнал.ошибка( «Что-то пошло не так в методе saveOutboundLog», e.getCause()); } }) .блокировать(); }); } Мой клиентский компонент;
@Bean общественный клиент BaseApiClient (HttpClient httpClient) { окончательный вар webClient = ВебКлиент.строитель() .кодеки( клиенткодекконфигуратор -> clientCodecConfigurer.defaultCodecs().maxInMemorySize(32 * 1024 * 1024)) .baseUrl(clientProperties.getBaseUrl()) .clientConnector(новый ReactorClientHttpConnector(httpClient)) .filter(logFilter()) .строить(); окончательная фабрика вар = HttpServiceProxyFactory.builder(WebClientAdapter.forClient(webClient)) .blockTimeout(Duration.ofSeconds(60)) .строить(); return Factory.createClient(MyClient.class); }
У меня проблема с WebClient. Я использую Http-интерфейс с WebClient, и мне необходимо регистрировать входящий/исходящий трафик в базу данных. Я написал этот фильтр журнала, но некоторые службы выдают NullPointerException. Я попробовал подписаться вместо блокировать, бот не работает. Я пробовал еще много вещей, но не могу решить эту проблему. Вы можете мне помочь?
Вот мой фильтр;
public ExchangeFilterFunction logFilter() { возврат (запрос, следующий) -> следующий.обмен(запрос) .publishOn(Schedulers.boundedElastic()) .doOnNext( клиентОтвет -> { клиентОтвет .bodyToMono(String.class) .doOnNext( clientResponseAsString -> { пытаться { // сохраняем запрос и ответ в базу данных } catch (Исключение е) { журнал.ошибка( «Что-то пошло не так в методе saveOutboundLog», e.getCause()); } }) .блокировать(); }); } Мой клиентский компонент;
@Bean общественный клиент BaseApiClient (HttpClient httpClient) { окончательный вар webClient = ВебКлиент.строитель() .кодеки( клиенткодекконфигуратор -> clientCodecConfigurer.defaultCodecs().maxInMemorySize(32 * 1024 * 1024)) .baseUrl(clientProperties.getBaseUrl()) .clientConnector(новый ReactorClientHttpConnector(httpClient)) .filter(logFilter()) .строить(); окончательная фабрика вар = HttpServiceProxyFactory.builder(WebClientAdapter.forClient(webClient)) .blockTimeout(Duration.ofSeconds(60)) .строить(); return Factory.createClient(MyClient.class); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Linux Debian отключить локальную сеть для исходящего интернет-трафика [закрыто]
Anonymous » » в форуме Linux - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Прерывистая сбой обработки трафика VPN при пересылке реального веб -трафика
Anonymous » » в форуме Python - 0 Ответы
- 4 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Добавьте правило входящего трафика в группы безопасности с помощью AWS CDK
Anonymous » » в форуме Python - 0 Ответы
- 94 Просмотры
-
Последнее сообщение Anonymous
-