Apache HttpClient 5-ന്റെ Fluent API-യിൽ, Request ഒരു പ്രോക്സി തിരഞ്ഞെടുക്കാം, Executor അതിന്റെ അക്കൗണ്ട് നൽകുന്നു. ആ ക്രെഡൻഷ്യലുള്ള ഒബ്ജക്റ്റ് വഴി അഭ്യർത്ഥന നടപ്പിലാക്കുക:

HttpHost proxy = new HttpHost("http", "proxy.example", 8080);
Executor executor = Executor.newInstance()
    .auth(proxy, proxyUser, proxyPassword.toCharArray());

String body = executor.execute(
        Request.get("https://www.example.com/").viaProxy(proxy))
    .returnContent()
    .asString();

Executor-ഉം Request-ഉം org.apache.hc.client5.http.fluent-ൽ നിന്നാണ്; HttpHost org.apache.hc.core5.http-ൽ നിന്നാണ്. അക്കൗണ്ട് വേരിയബിളുകൾ ആപ്ലിക്കേഷന്റെ കോൺഫിഗറേഷനിൽ നിന്നാണ് വരുന്നത്.

പ്രോക്സിയുടെ രണ്ട് ഉപയോഗങ്ങളും ബോധപൂർവം ഒരേ ഹോസ്റ്റും പോർട്ടും വിവരിക്കുന്നു. viaProxy റൂട്ട് തിരഞ്ഞെടുക്കുന്നു, auth ആ ഇടനിലക്കാരനുള്ള ക്രെഡൻഷ്യലുകൾ Executor-ൽ രജിസ്റ്റർ ചെയ്യുന്നു. അന്തിമ ഫലം 407 ആയി തുടരുകയാണെങ്കിൽ, തിരഞ്ഞെടുത്ത റൂട്ട് ക്രെഡൻഷ്യലുകളുടെ പരിധിയുമായി താരതമ്യം ചെയ്യുക.

വേറൊരു Request-ന്റെ സൗകര്യ execute മെത്തേഡ് വിളിച്ചാൽ മറ്റൊരു എക്സിക്യൂഷൻ പാത്ത് ഉപയോഗിക്കും. ഉദാഹരണത്തിലെന്നപോലെ ക്രെഡൻഷ്യലുള്ള Executor-നെ പ്രവർത്തനത്തോട് ബന്ധിപ്പിച്ച് നിർത്തുക, അങ്ങനെ വെല്ലുവിളി സ്വീകരിക്കുന്ന ക്ലയന്റിന് കോൺഫിഗർ ചെയ്ത അക്കൗണ്ട് ഉണ്ടാകും.

ഉദാഹരണം 5.x-ലെ char-array പാസ്വേഡ് ഇന്റർഫേസ് ഉപയോഗിക്കുന്നു. പഴയ HttpClient 4 Fluent സ്നിപ്പറ്റുകൾ വ്യത്യസ്ത പാക്കേജുകളും മെത്തേഡ് സിഗ്നേച്ചറുകളും ഉപയോഗിക്കുന്നു. അഭ്യർത്ഥന പൂർത്തിയാകുമ്പോൾ returnContent പ്രതികരണ ഘടകം ഉപയോഗിക്കുകയും അതിന്റെ കണക്ഷൻ പുനരുപയോഗത്തിനായി വിടുകയും ചെയ്യുന്നു.

അനുബന്ധ ലേഖനങ്ങൾ