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();

Zamýšlené asynchronní požadavky posílejte tímto klientem a ponechte jejich skutečné cílové URI. Klienta zachovejte po dobu práce a potom jej zavřete. Pro povolené požadavky na veřejné cíle nabízí seznam SOCKS proxy možné hostitele a porty; zvolte verzi SOCKS podporovanou reaktorem.

Tuto asynchronní socketovou cestu řídí reaktor. HTTP proxy trasa s HttpHost nebo SocketConfig klasického správce spojení je jiné rozhraní.

Pro podporovanou SOCKS autentizaci uživatelským jménem a heslem nastavte na builderu reaktoru také setSocksProxyUsername a setSocksProxyPassword. Konfiguraci dokončete před start, nikoli změnami sdílených nastavení za běhu požadavků.

Související články