java - 如何从 Apache Http 客户端创建 Spring WebClient
问题描述
我想从HttpComponent的 org.apache.http.client.HttpClient 创建WebClient以在异步操作中使用它。关于如何做的任何想法
解决方案
随着Spring Framework 5.3和Spring Boot 2.4的发布, Apache HttpClient 5.0和 Spring WebClient之间有了内置的集成。
HttpAsyncClientBuilder clientBuilder = HttpAsyncClients.custom();
clientBuilder.setDefaultRequestConfig(...);
CloseableHttpAsyncClient client = clientBuilder.build();
ClientHttpConnector connector = new HttpComponentsClientHttpConnector(client);
WebClient webClient = WebClient.builder().clientConnector(connector).build();
更新(基于@kolyaiks 的评论)
必要的依赖:
<dependency>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5</artifactId>
<version>5.1</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents.core5</groupId>
<artifactId>httpcore5-reactive</artifactId>
<version>5.1</version>
</dependency>
推荐阅读
- php - 一个字符串出现在另一个字符串中
- scala - Scala中基于String选择案例类
- python - Seaborn 散点图在 y-tick 中的重叠点
- r - R 中是否存在类似 tab() gen() 的语法?
- java - 如何在n <= 900且a(i,j)= 0或a(i,j)= 1的n * n矩阵中找到每个a(i,j)的条目?
- heroku - 安装 heroku cli 后,我收到有关木马 Trojan:BAT/Killav.DJ!MSR 的警报
- javascript - Mysql 错误 - 1251 'ER_NOT_SUPPORTED_AUTH_MODE'
- python - 从正则表达式字典创建 pandas 列
- python - 检查 B 列的所有唯一值是否与 A 列的所有唯一值映射
- node.js - 返回类型不可分配