אימות פרוקסי ב-Apache HttpClient 5 Fluent עם Executor
חברו את מסלול ה-viaProxy של Fluent Request עם פרטי הכניסה ב-Executor של Apache HttpClient 5.
ב-Fluent API של Apache HttpClient 5, ה-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, השוו את המסלול שנבחר להיקף פרטי הכניסה.
קריאה לשיטת execute הנוחה של Request נפרד הייתה משתמשת בנתיב ביצוע אחר. השאירו את ה-Executor עם פרטי הכניסה מחובר לפעולה, כמו בדוגמה, כדי שלקוח שמקבל את האתגר יהיה לו החשבון המוגדר.
הדוגמה משתמשת בממשק הסיסמה char-array של 5.x. קטעי HttpClient 4 Fluent ישנים משתמשים בחבילות ובחתימות שיטות שונות. כשהבקשה מסתיימת, returnContent צורך את גוף התגובה ומשחרר את החיבור לשימוש חוזר.