Spring WebFlux 中 ClientRequest 和 ClientHttpRequest 如何连接
How are ClientRequest & ClientHttpRequest connected in Spring WebFlux
当我们从 spring-webflux
使用 WebClient
API 时,它在内部使用 ClientRequest
class
但我们在 spring-web
模块中也有 ClientHttpRequest
为什么我们有两个不同的 class听起来很相似。有人可以解释这两个 class 之间的区别吗?
org.springframework.web.reactive.function.client.ClientRequest
意味着 class,Spring 开发人员可以将其与 WebClient
一起使用。它具有高级功能,如请求属性映射、用于记录目的的 logPrefix、静态构建器等。它还使用更高级别的概念,如 ExchangeStrategies
.
另一方面,org.springframework.http.client.reactive.ClientHttpRequest
是原始 HTTP 级别的 HTTP 客户端请求的基本抽象。用于实现HTTP客户端的各种适配层(Reactor Netty、Jetty)。
因此,除非您正在处理低级别的东西,否则您不需要在您的应用程序中直接使用 ClientHttpRequest
。
当我们从 spring-webflux
使用 WebClient
API 时,它在内部使用 ClientRequest
class
但我们在 spring-web
模块中也有 ClientHttpRequest
为什么我们有两个不同的 class听起来很相似。有人可以解释这两个 class 之间的区别吗?
org.springframework.web.reactive.function.client.ClientRequest
意味着 class,Spring 开发人员可以将其与 WebClient
一起使用。它具有高级功能,如请求属性映射、用于记录目的的 logPrefix、静态构建器等。它还使用更高级别的概念,如 ExchangeStrategies
.
另一方面,org.springframework.http.client.reactive.ClientHttpRequest
是原始 HTTP 级别的 HTTP 客户端请求的基本抽象。用于实现HTTP客户端的各种适配层(Reactor Netty、Jetty)。
因此,除非您正在处理低级别的东西,否则您不需要在您的应用程序中直接使用 ClientHttpRequest
。