Apache HttpClient 5 Fluent ile Executor kullanarak proxy kimlik doğrulama
Bir Fluent Request'in viaProxy rotasını Apache HttpClient 5 Executor'ındaki kimlik bilgileriyle eşleştirin.
Apache HttpClient 5'in Fluent API'sinde Request bir proxy seçebilir, Executor ise hesabını sağlar. İsteği bu kimlik bilgilerine sahip nesne üzerinden yürütün:
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 ve Request org.apache.hc.client5.http.fluent paketinden; HttpHost org.apache.hc.core5.http paketinden gelir. Hesap değişkenleri uygulamanın yapılandırmasından gelir.
Proxy'nin iki kullanımı kasıtlı olarak aynı ana bilgisayarı ve bağlantı noktasını tanımlar. viaProxy rotayı seçerken auth, o aracı için kimlik bilgilerini Executor'da kaydeder. Sonuç hâlâ 407 ise, seçilen rotayı kimlik bilgilerinin kapsamıyla karşılaştırın.
Ayrı bir Request'in kullanışlı execute yöntemini çağırmak başka bir yürütme yolu kullanırdı. Örnekte olduğu gibi kimlik bilgilerine sahip Executor'ı işleme bağlı tutun; böylece meydan okumayı alan istemci yapılandırılmış hesaba sahip olur.
Örnek, 5.x'in char-array parola arayüzünü kullanır. Daha eski HttpClient 4 Fluent parçacıkları farklı paketler ve yöntem imzaları kullanır. İstek tamamlandığında returnContent yanıt varlığını tüketir ve bağlantısını yeniden kullanım için serbest bırakır.