Jenkins proxykezelő HTTP-kliensének használata beépülő modulban
A beépülő modul kimenő klienst a Jenkins nyilvános ProxyConfiguration segédprogramján keresztül építse fel, ne a tárolt fiókmezőket másolja.
A kimenő HTTP-kérést végző Jenkins-beépülő modul használhatja a Jenkins nyilvános, proxykezelő kliens-segédprogramját:
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());
A részlet a hudson.ProxyConfiguration, a java.net.URI és a java.net.http típusokat használja. A hívó a normál beépülőmodul-folyamatán keresztül kezeli a bemenetet és a kimenetet, valamint a megszakítást. A törzskezelő elfogyasztja és eldobja a válasz törzsét.
A newHttpClient és a hozzá tartozó építőfelület a Jenkins 2.379 óta érhető el. Vezérlő JVM-ben a Jenkins által támogatott proxykonfigurációt alkalmazzák. Használja újra a klienst, ahelyett hogy minden kéréshez újat hozna létre.
Így elkerülhető, hogy a vezérlőben tárolt proxynevet és jelszót egy külön beállított átvitelbe másolják. Egy külön létrehozott Java HTTP-klienst nem tesz proxykezelővé az, hogy a vezérlő felületén van proxybejegyzés.
Azoknál a kéréseknél, amelyek Authorization fejlécet küldenek a célállomásnak, tekintse át a hitelesített proxy dokumentált korlátozását Java 17 és újabb verziók esetén. A dokumentáció kifejezetten erre a kombinációra hívja fel a figyelmet; e segédprogram választása nem szünteti meg ezt a klienskorlátot.