תוספת של Jenkins שמבצעת בקשת HTTP יוצאת יכולה להשתמש בעוזר הלקוח הציבורי המודע לפרוקסי של Jenkins:

HttpClient client = ProxyConfiguration.newHttpClient();
HttpRequest request = ProxyConfiguration.newHttpRequestBuilder(
        URI.create("https://service.example/status"))
    .GET()
    .build();
HttpResponse<Void> response = client.send(
    request, HttpResponse.BodyHandlers.discarding());

הקטע משתמש בטיפוסים hudson.ProxyConfiguration, java.net.URI ו-java.net.http. הקורא מטפל בקלט ובפלט ובהפסקה דרך זרימת התוספת הרגילה. מטפל הגוף צורך וזורק את גוף התגובה.

newHttpClient וממשק הבנאי שלו זמינים מאז Jenkins 2.379. ב-JVM של הבקר הם מחילים את תצורת הפרוקסי הנתמכת של Jenkins. השתמשו בלקוח שוב במקום ליצור אחד לכל בקשה.

כך נמנעת העתקת שם הפרוקסי והסיסמה השמורים בבקר אל תעבורה שהוגדרה בנפרד. לקוח HTTP של Java שנוצר בנפרד אינו הופך מודע לפרוקסי רק מפני שבממשק הבקר קיימת רשומת פרוקסי.

עבור בקשות ששולחות כותרת Authorization ליעד, עיינו במגבלה המתועדת של פרוקסי מאומת ב-Java 17 ואילך. התיעוד מציין במפורש שילוב זה; בחירת עוזר זה אינה מסירה את מגבלת הלקוח.

מאמרים קשורים