Додатак за 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-ову подржану proxy конфигурацију. Поново употребите клијент уместо да правите нови за сваки захтев.

Тиме се избегава копирање имена и лозинке проксија сачуваних у контролеру у засебно конфигурисан пренос. Засебно направљен Java HTTP клијент не постаје свестан проксија само зато што у сучељу контролера постоји proxy унос.

За захтеве који шаљу Authorization заглавље одредишту, прегледајте документовано ограничење аутентификованог проксија на Javi 17 и новијим верзијама. Документација посебно указује на ту комбинацију; избор овог помоћника не уклања то ограничење клијента.

Повезани чланци