ClientRequest 和 ClientHttpRequest 在 Spring WebFlux 中的连接方式



当我们使用spring-webfluxWebClient API时,它在内部使用ClientRequest class

但是我们在spring-web模块中也有ClientHttpRequest

为什么我们有两个不同的类别的&非常相似。有人可以解释这两个类之间的区别吗?

org.springframework.web.reactive.function.client.ClientRequest是春季开发人员可以在WebClient中使用的类。它具有高级功能,例如请求属性映射,用于记录目的的logprefix,静态构建器等。它还使用了ExchangeStrategies等较高级别的概念。

另一方面,org.springframework.http.client.reactive.ClientHttpRequest是在RAW HTTP级别上HTTP客户端请求的基本抽象。这用于为HTTP客户端实施各种适应层(反应堆Netty,Jetty)。

因此,除非您使用低级别的东西,否则您不需要在应用程序中直接使用ClientHttpRequest

最新更新