SOCKS-beállítások az Apache HttpClient 5.5 kapcsolatkezelőjén
A készlet socket-szabályzatát SocketConfiggal állítsa be HTTP-proxy útvonal vagy egyéni socket-gyár helyett.
Az Apache HttpClient 5.5 SOCKS-konfigurációs útvonalat tartalmaz a kapcsolatkezelő socket-beállításaiban. Karbantartott példája a setSocksProxyAddress elemet használja:
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();
A részlet az HttpClient 5 org.apache.hc csomagjait és a HttpCore SocketConfig elemét használja. Az ezzel a klienssel végzett kérések a fent beállított készletet használják. Zárja be a klienst, amikor az alkalmazás tulajdonosi hatóköre véget ér.
Helyezze a webhely tényleges URL-címét a kérésre a szokásos módon. A proxy-hitelesítés nélküli, engedélyezett nyilvános webhelyekre irányuló kérésekhez a SOCKS-proxylista jelölt címeket kínál; válasszon a tényleges futtatókörnyezet által támogatott SOCKS-verziót. A SOCKS-cím az eléréséhez használt szállítást állítja be; ez nem HttpHostként átadott HTTP-továbbító proxy útvonal.
Ezek a kezelő alapértelmezett socket-beállításai. Az útvonalankénti SocketConfig-feloldót használó alkalmazásnak a kívánt SOCKS-beállítást inkább ezen szabályzaton keresztül kell alkalmaznia. A példa megtartja a kapcsolatkezelő szokásos cél-DNS-szabályzatát; a távoli névfeloldás külön ellenőrzött konfigurációt igényel.