webClient 问题 - 在 ReactorClientHttpConnector 和 httpClient 之间
webClient issue - Between ReactorClientHttpConnector and httpClient
我遇到版本问题,首先让我解释一下问题。
我有以下代码:
public WebClient createWebClient() throws SSLException {
SslContext sslContext = SslContextBuilder
.forClient()
.trustManager(InsecureTrustManagerFactory.INSTANCE)
.build();
HttpClient httpClient = HttpClient.create().secure(t -> t.sslContext(sslContext));
return WebClient.builder().baseUrl(endpointURL)
.clientConnector(new ReactorClientHttpConnector(httpClient))
.filter(errorHandlingFilter())
.build();
}
使用 spring-web 版本 5.2.3 和 netty 版本 0.9.3 与 clientConnector 的部分工作正常。
现在我的版本是 5.0.11(仅)然后这部分代码停止工作并出现错误:
incompatible types: reactor.netty.http.client.HttpClient cannot be converted to java.util.functi
on.Consumer<? super reactor.ipc.netty.http.client.HttpClientOptions.Builder>
旧版本的 spring-web 有什么替代品吗?
提前致谢=)
我认为这是不可能的。 HttpClientOptions
已从 reactor-netty 的第 0.8.x 代中删除,您实际上是在尝试使用 2 年前的 Spring 框架一代和 9 个月大的框架发布。
Spring团队正在努力保持兼容性,但就reactor netty而言,这仍然是一个处于0.x阶段的项目,API changes/repackaging 仍在预期中。
我遇到版本问题,首先让我解释一下问题。 我有以下代码:
public WebClient createWebClient() throws SSLException {
SslContext sslContext = SslContextBuilder
.forClient()
.trustManager(InsecureTrustManagerFactory.INSTANCE)
.build();
HttpClient httpClient = HttpClient.create().secure(t -> t.sslContext(sslContext));
return WebClient.builder().baseUrl(endpointURL)
.clientConnector(new ReactorClientHttpConnector(httpClient))
.filter(errorHandlingFilter())
.build();
}
使用 spring-web 版本 5.2.3 和 netty 版本 0.9.3 与 clientConnector 的部分工作正常。 现在我的版本是 5.0.11(仅)然后这部分代码停止工作并出现错误:
incompatible types: reactor.netty.http.client.HttpClient cannot be converted to java.util.functi
on.Consumer<? super reactor.ipc.netty.http.client.HttpClientOptions.Builder>
旧版本的 spring-web 有什么替代品吗?
提前致谢=)
我认为这是不可能的。 HttpClientOptions
已从 reactor-netty 的第 0.8.x 代中删除,您实际上是在尝试使用 2 年前的 Spring 框架一代和 9 个月大的框架发布。
Spring团队正在努力保持兼容性,但就reactor netty而言,这仍然是一个处于0.x阶段的项目,API changes/repackaging 仍在预期中。