Java URLConnection: impostare il proxy senza cambiare l'URL
Evita di indirizzare il proxy come server web e passa la rotta come opzione di connessione Java separata.
Mantieni l'URL reale della risorsa e passa il proxy separatamente a URLConnection:
URI destination = URI.create("https://example.com/report");
Proxy proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("203.0.113.10", 8080));
URLConnection connection = destination.toURL().openConnection(proxy);
connection.setConnectTimeout(5000);
connection.setReadTimeout(10000);Usa gli import java.net e sostituisci l'indirizzo proxy della documentazione con il tuo servizio HTTP o un candidato dalla lista di proxy HTTP. La connessione richiede ancora https://example.com/report; il proxy è la sua rotta. Questa configurazione non configura né le credenziali né tutte le librerie HTTP nella JVM.
Un codice errato che sostituisce il proxy nell'URL della risorsa può ottenere una rapida pagina web proxy o un errore al posto del report. Confronta stato, contenuto e destinazione reale prima di interpretare quella risposta rapida come prestazioni migliori.
openConnection(Proxy) lascia il percorso della risorsa sull'URI di destinazione. Mantieni quel nome host anche per la verifica del certificato HTTPS; cambiarlo con l'intermediario può aggiungere una discrepanza di nome all'errore di instradamento.
Se l'applicazione costruisce un altro client HTTP, usa quel client o la sua interfaccia di connection factory. Un oggetto proxy URLConnection non può configurare un percorso che non chiama mai questa API.