En Jenkins-Plugin, deen eng Ausgangs-HTTP-Ufro mécht, kann dem Jenkins sengen ëffentlechen proxy-bewussten Client-Helfer benotzen:

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());

Den Auszuch benotzt d'Typen hudson.ProxyConfiguration, java.net.URI an java.net.http. Den Oprufer behandelt Input an Output souwéi Ënnerbriechung iwwer säin normale Plugin-Floss. Den Textveraarbechter verbraucht de Response-Kierper a verwerft en.

newHttpClient an seng Builder-Schnittstell sinn zënter Jenkins 2.379 disponibel. An enger Controller-JVM uwenden si dem Jenkins seng ënnerstëtzte Proxy-Konfiguratioun un. Benotzt de Client erëm, amplaz fir all Ufro en neien ze maachen.

Domat gëtt verhënnert, datt den am Controller gespäicherten Proxy-Numm an d'Passwuert an en separat konfiguréierten Transport kopéiert ginn. En separat erstallte Java-HTTP-Client gëtt net proxy-bewosst, just well d'Controller-Interface en Proxy-Andrag huet.

Fir Ufroen, déi en Authorization-Header un d'Destinatioun schécken, kuckt d'dokumentéiert Aschränkung vum authentifizéierte Proxy op Java 17 a méi spéit. D'Dokumentatioun weist spezifesch op dës Kombinatioun hin; dësen Helfer ze wielen hieft déi Client-Aschränkung net op.

Ähnlech Artikelen