Nastavitve SOCKS v Apache HttpClient 5.5 na upravitelju povezav
Konfigurirajte socket politiko bazenčka s SocketConfig namesto s potjo proxy HTTP ali lastno tovarno socketov.
Apache HttpClient 5.5 vsebuje pot konfiguracije SOCKS v nastavitvah socketov upravitelja povezav. Njegov vzdrževani primer uporablja setSocksProxyAddress:
InetSocketAddress socks =
new InetSocketAddress("proxy.example.net", 1080);
PoolingHttpClientConnectionManager manager =
PoolingHttpClientConnectionManagerBuilder.create()
.setDefaultSocketConfig(
SocketConfig.custom()
.setSocksProxyAddress(socks)
.build()
)
.build();
CloseableHttpClient client = HttpClients.custom()
.setConnectionManager(manager)
.build();
Delček uporablja pakete org.apache.hc iz HttpClient 5 in SocketConfig iz HttpCore. Zahteve, narejene s tem odjemalcem, uporabljajo bazen, konfiguriran zgoraj. Zaprite odjemalca, ko se obseg lastništva aplikacije konča.
Na zahtevo vstavite dejanski URL spletnega mesta kot običajno. Za dovoljene zahteve do javnih spletnih mest brez preverjanja pristnosti proxy seznam proxyjev SOCKS ponuja kandidatne naslove; izberite različico SOCKS, ki jo podpira dejansko izvajalno okolje. Naslov SOCKS konfigurira transport, uporabljen za dosego; to ni pot posredniškega proxyja HTTP, podana kot HttpHost.
To so privzete nastavitve socketov za tega upravitelja. Aplikacija, ki uporablja razreševalnik SocketConfig za vsako pot, bi morala želeno nastavitev SOCKS uporabiti prek te politike. Primer ohrani običajno politiko DNS cilja upravitelja povezav; oddaljeno razreševanje imen zahteva ločeno preverjeno konfiguracijo.