Barnaamijka Apache HttpClient 4, meesha HTTPS ma micnaheedu in xiriir kasta uu ku bilaabmo TLS. Proxy HTTP caadi ah waxaa lagu gaaraa xiriir aan la sirrin, ka dibna CONNECT wuxuu furaa tunnelka oo TLS lagu dhejiyo dhanka meesha.

Haddii maareeyaha xiriirka gaarka ah uu diiwaangeliyo https oo keliya, boodhka proxy ee ugu horreeya wuu ku guuldareystaa UnsupportedSchemeException: http protocol is not supported.

API-da 4.5, ku dar labada farsamo markaad dhisayso maareeyahaas:

var registry = RegistryBuilder.<ConnectionSocketFactory>create()
    .register("http", PlainConnectionSocketFactory.getSocketFactory())
    .register("https", tlsFactory)
    .build();

var manager = new PoolingHttpClientConnectionManager(registry);
var client = HttpClients.custom()
    .setConnectionManager(manager)
    .setProxy(new HttpHost("proxy.example.net", 8080, "http"))
    .build();

tlsFactory waa SSLConnectionSocketFactory ee barnaamijka, oo leh hubinta kalsoonida iyo magaca martigeliyaha ee loogu talagalay. Noocyada la muujiyay waxay ka tirsan yihiin xirmooyinka org.apache.http ee Apache 4. Qaybtani waxay u malaynaysaa in Java ay qiyaasi karto nooca doorsoomayaasha maxalliga ah; koodhka Java ee hore wuxuu isticmaali karaa noocyo cad.

Ku dheji maareeyaha la hagaajiyay macmiilka dhab ahaan loo isticmaalo codsiga. Codsiga HTTPS ee dadweynaha ee la oggolaaday oo aan lahayn aqoonsiga proxy, gelitaanka HTTP oo ka yimid liiska proxy HTTP ayaa buuxin kara cinwaanka proxy ee HttpHost. Habaynta builder kale ma cusboonaysiiso macmiil hore loo dhisay.

Sidoo kale baadh lahaanshaha builder-ka: HttpClientBuilder wuxuu diiwaangeliyaa in maareeyaha xiriirka ee si cad loo bixiyay uu ka gudbi karo gelitaanka habaynta SSL ee gaar ah. Ku dheji farsamooyinka loo baahan yahay diiwaanka maareeyaha halkii aad ka malayn lahayd in wicitaan setSSLContext dambe uu beddelayo gudaha.

Cilad-baadhistan waxay khuseysaa diiwaanka qorshaha maxalliga ah. Caqabadda aqoonsiga proxy ama meel la diiday waa natiijo dambe oo kale duwan. Hay labada diiwaangelin farsamo markaad baadhayso jawaabahaas.

Maqaallo la xiriira