Apache HttpAsyncClient 5: SOCKS instellen met IOReactorConfig
Stel het proxyadres op de reactor in voordat HttpAsyncClient 5 start, in plaats van de socketconfiguratie van de klassieke client te gebruiken.
import java.net.InetSocketAddress;
import org.apache.hc.core5.reactor.IOReactorConfig;
import org.apache.hc.client5.http.impl.async.HttpAsyncClients;
var reactor = IOReactorConfig.custom()
.setSocksProxyAddress(new InetSocketAddress("proxy.example", 1080))
.build();
var client = HttpAsyncClients.custom()
.setIOReactorConfig(reactor)
.build();
client.start();Stuur de bedoelde asynchrone verzoeken via deze client en behoud hun echte doel-URI’s. Houd de client tijdens het werk actief en sluit hem daarna. Voor toegestane verzoeken naar openbare doelen levert de SOCKS-proxylijst mogelijke hosts en poorten; gebruik een SOCKS-versie die de reactor ondersteunt.
De reactor regelt dit asynchrone socketpad. Een HTTP-proxyroute met HttpHost of SocketConfig van de klassieke verbindingsbeheerder is een andere interface.
Voor ondersteunde SOCKS-authenticatie met gebruikersnaam en wachtwoord stelt u ook setSocksProxyUsername en setSocksProxyPassword op de reactorbuilder in. Rond de configuratie af vóór start in plaats van gedeelde instellingen tijdens lopende verzoeken te wijzigen.