SOCKS-agordoj de Apache HttpClient 5.5 ĉe la konekta administranto
Agordu la soketan politikon de la baseno per SocketConfig anstataŭ HTTP-prokura vojo aŭ propra soketa fabriko.
Apache HttpClient 5.5 inkluzivas SOCKS-agordan vojon en la soketaj agordoj de la konekta administranto. Ĝia prizorgata ekzemplo uzas 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();
La fragmento uzas la pakaĵojn org.apache.hc de HttpClient 5 kaj SocketConfig de HttpCore. Petoj faritaj per ĉi tiu kliento uzas la basenon agorditan supre. Fermu la klienton kiam la posedoamplekso de la aplikaĵo finiĝas.
Metu la realan retadreson de la retejo sur la peton kiel kutime. Por permesitaj petoj al publikaj retejoj sen prokura aŭtentikigo, la listo de SOCKS-prokuroj proponas kandidatajn adresojn; elektu SOCKS-version subtenatan de la reala rulmedio. La SOCKS-adreso agordas la transporton uzatan por atingi ĝin; ĝi ne estas HTTP-antŭenprokura vojo liverita kiel HttpHost.
Ĉi tiuj estas defaŭltaj soketaj agordoj por ĉi tiu administranto. Aplikaĵo uzanta SocketConfig-solvilon por ĉiu vojo devus apliki la deziratan SOCKS-agordon per tiu politiko anstataŭe. La ekzemplo konservas la normalan DNS-politikon de la celo de la konekta administranto; fora nomrezolucio postulas aparte kontrolitan agordon.