Как ClientRequest и ClientHttpRequest связаны в Spring WebFlux - PullRequest
0 голосов
/ 21 декабря 2018

Когда мы используем WebClient API из spring-webflux, он внутренне использует ClientRequest класс

Но у нас также есть ClientHttpRequest в модуле spring-web

Почему мыесть два разных класса, которые звучат и очень похожи.Может кто-нибудь объяснить разницу между этими двумя классами?

1 Ответ

0 голосов
/ 21 декабря 2018

org.springframework.web.reactive.function.client.ClientRequest - это класс, в котором разработчики Spring могут использовать с WebClient.Он имеет расширенные функции, такие как карта атрибутов запроса, logPrefix для целей ведения журнала, статические компоновщики и т. Д. Он также использует концепции более высокого уровня, такие как ExchangeStrategies.

С другой стороны, org.springframework.http.client.reactive.ClientHttpRequest является основойабстракция для клиентских запросов HTTP, на уровне исходного HTTP.Это используется для реализации различных уровней адаптации для HTTP-клиентов (Reactor Netty, Jetty).

Поэтому, если вы не работаете с вещами низкого уровня, вам не нужно использовать ClientHttpRequest непосредственно в вашем приложении..

...