我正在使用Spring 5 WebClient。我想知道是否可以将其配置为使用HTTP代理,或者是否有一种方法可以更改它的默认配置。
答案 0 :(得分:15)
这是底层客户端库应该支持的东西。
使用Reactor Netty时,您可以执行以下操作:
HttpClient httpClient = HttpClient.create()
.tcpConfiguration(tcpClient ->
tcpClient.proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP).host("myproxyhost")));
ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClient);
WebClient client = WebClient.builder().clientConnector(connector).build();
答案 1 :(得分:0)
“tcpConfiguration”已弃用。 所以改用这部分代码。
HttpClient httpClient =
HttpClient.create()
.proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP)
.host(sasConfig.getProxyHost())
.port(Integer.parseInt(sasConfig.getProxyPort())));
ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClient);
WebClient webClient = WebClient.builder().clientConnector(connector).build();