תצורת פרוקסי של Elasticsearch Rest5Client עם HttpClient 5
הגדירו את המתווך בבונה ה-HTTP האסינכרוני של Rest5Client תוך שמירה על ייבוא עקבי של Apache 4 ו-5.
Rest5Client של Elasticsearch חושף את בונה Apache HttpClient 5 שלו באמצעות callback לתצורה:
import co.elastic.clients.transport.rest5_client.low_level.Rest5Client;
import org.apache.hc.core5.http.HttpHost;
var proxy = new HttpHost("http", "proxy.example.net", 8080);
var rest = Rest5Client.builder(
new HttpHost("https", "search.example.net", 9200))
.setHttpClientConfigCallback(httpBuilder -> {
httpBuilder.setProxy(proxy);
})
.build();
העבירו את rest להגדרת התעבורה של Elasticsearch ביישום וסגרו אותו כאשר רכיב זה נכבה. מארח החיפוש נשאר HTTPS; סכימת ה-http של הפרוקסי מתארת את החיבור למתווך. עבור מסלול פרוקסי ציבורי מורשה אל מארח חיפוש נגיש לציבור, ה-רשימת פרוקסי HTTP מספק מועמדים לנקודות קצה; ודאו שהפרוקסי הנבחר מתיר את מארח החיפוש ואת הפורט.
לאימות פרוקסי, צרפו ספק אישורים של Apache 5 בהיקף מתאים באותו callback. שמרו את חשבון Elasticsearch בנפרד.
ה-callback מקבל Consumer: הגדירו את הבונה שסופק בתוך הבלוק בלי להחזיר מחליף. דוגמאות RestHighLevelClient שמשתמשות ב-org.apache.http שייכות לדור ישן יותר; Apache 5 משתמש בחבילות org.apache.hc.