HttpURLConnection exposa usingProxy, però el resultat necessita al costat la implementació i l'estat de la connexió. No és una petició de prova.

Al gestor HTTP d'OpenJDK 25, un proxy HTTP configurat explícitament pot fer que el mètode retorni true abans que s'obri la connexió de xarxa:

import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URI;

var proxy = new Proxy(Proxy.Type.HTTP,
    new InetSocketAddress("proxy.example", 8080));
var url = URI.create("http://example.com/").toURL();
var connection = (HttpURLConnection) url.openConnection(proxy);
boolean proxyFlag = connection.usingProxy();

Un candidat HTTP de la llista de proxys HTTP pot omplir l'amfitrió i el port per a una petició pública permesa sense autenticació de proxy. openConnection construeix l'objecte. No estableix la connexió HTTP pel sol fet de retornar aquest objecte. Per tant, l'indicador en aquest cas de proxy explícit no demostra que l'intermediari sigui accessible o accepti la petició.

Amb selecció automàtica, l'elecció de ruta pot ocórrer més tard, quan el gestor es connecta. Un resultat false primerenc no s'ha de prendre com la decisió final de ruta. Després de connectar, interpreteu l'estat juntament amb qualsevol excepció o resposta, sobretot quan hi hagi autenticació o retrocés.

El mètode públic pertany a HttpURLConnection, mentre que el comportament anterior és específic del gestor OpenJDK esmentat. Un altre proveïdor o implementació de JDK no ha de mostrar els mateixos detalls previs a la connexió.

Registreu com es va seleccionar el proxy i quan es va llegir l'indicador. Per establir l'adreça d'origen que veu la destinació, conserva proves del costat de la destinació; un marcador booleà de proxy no té cap camp per a aquesta adreça de sortida.

Articles relacionats