Jenkins spraudnis, kas veic izejošu HTTP pieprasījumu, var izmantot Jenkins publisko starpniekservera apzināto klienta palīgu:

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

Šis fragments izmanto tipus hudson.ProxyConfiguration, java.net.URI un java.net.http. Izsaucējs apstrādā ievadi un izvadi, kā arī pārtraukšanu ar savu parasto spraudņa plūsmu. Pamatnes apstrādātājs patērē un izmet atbildes pamatni.

newHttpClient un tā veidotāja saskarne ir pieejama kopš Jenkins 2.379. Kontroliera JVM tie piemēro Jenkins atbalstīto starpniekservera konfigurāciju. Izmantojiet klientu atkārtoti, nevis veidojiet jaunu katram pieprasījumam.

Tas novērš kontrolierī saglabātā starpniekservera nosaukuma un paroles kopēšanu uz atsevišķi konfigurētu transportu. Atsevišķi izveidots Java HTTP klients nekļūst par starpniekservera apzinātu tikai tāpēc, ka kontroliera saskarnē ir starpniekservera ieraksts.

Pieprasījumiem, kas sūta Authorization galveni galamērķim, pārskatiet dokumentēto autentificētā starpniekservera ierobežojumu Java 17 un jaunākās versijās. Dokumentācija īpaši norāda šo kombināciju; šī palīga izvēle šo klienta ierobežojumu neizslēdz.

Saistītie raksti