Plugin ta' Jenkins li jagħmel talba HTTP ħierġa jista' juża l-għajnuna pubblika tal-klijent li jaf bil-proxy ta' 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());

Is-silta tuża t-tipi hudson.ProxyConfiguration, java.net.URI u java.net.http. Min isejjaħ jimmaniġġja l-input u l-output kif ukoll l-interruzzjoni permezz tal-fluss normali tal-plugin. Il-handler tal-ġisem jikkonsma u jarmi l-ġisem tar-risposta.

newHttpClient u l-interface tal-builder tiegħu huma disponibbli mill-Jenkins 2.379. Fil-JVM tal-kontrollur huma japplikaw il-konfigurazzjoni tal-proxy appoġġata minn Jenkins. Uża mill-ġdid il-klijent minflok toħloq wieħed għal kull talba.

Dan jevita li l-isem u l-password tal-proxy maħżuna fil-kontrollur jiġu kkupjati fi trasport konfigurat b'mod separat. Klijent HTTP ta' Java maħluq b'mod separat ma jsirx jaf bil-proxy sempliċement għax l-interface tal-kontrollur fiha entrata tal-proxy.

Għat-talbiet li jibagħtu header Authorization lid-destinazzjoni, aqra l-limitazzjoni dokumentata tal-proxy awtentikat fuq Java 17 u aktar tard. Id-dokumentazzjoni tispeċifika dan il-kombinament; li tagħżel din l-għajnuna ma tneħħix dik il-limitazzjoni tal-klijent.

Artikli relatati