Para a API clássica do Apache HttpClient 5, ative as propriedades do sistema ao criar o cliente:

import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.HttpClients;

try (CloseableHttpClient client = HttpClients.custom()
        .useSystemProperties()
        .build()) {
    // Execute the application's HTTP work with this client.
}

Forneça os argumentos de inicialização pretendidos, como -Dhttp.proxyHost=203.0.113.10 -Dhttp.proxyPort=8080, usando seu endpoint real. A lista de proxies HTTP oferece candidatos públicos quando essa rota é permitida. Inclua as propriedades de HTTPS e de desvio para os destinos envolvidos. Definir apenas uma propriedade da JVM não prova que este cliente a use.

A referência do builder identifica as propriedades consideradas pelos seus componentes padrão. Planejadores de rotas explícitos ou outros componentes fornecidos podem alterar esse comportamento.

Faça as solicitações por meio desta instância configurada. Uma dependência que constrói outro cliente precisa da sua própria fábrica ou entrada de proxy suportada; um cliente sem uso ao lado não muda nada.

Identifique a biblioteca e os imports na operação que falhou. Commons HttpClient 3, Apache HttpClient 4, HttpClient 5 e o java.net.http.HttpClient do Java têm interfaces de configuração diferentes. Uma receita de classe antiga não explica um cliente que nunca usa essa geração.

Artigos relacionados