Java URLConnection: Angiv proxyen uden at ændre URL'en
Undgå at adressere proxyen som en webserver, og send ruten som en separat Java-forbindelsesindstilling.
Behold den rigtige ressource-URL, og send proxyen separat til 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);Brug java.net-importerne, og erstat dokumentationens proxyadresse med din HTTP-tjeneste eller en kandidat fra HTTP-proxylisten. Forbindelsen anmoder stadig om https://example.com/report; proxyen er dens rute. Denne opsætning konfigurerer hverken legitimationsoplysninger eller alle HTTP-biblioteker i JVM'en.
Forkert kode, der indsætter proxyen i ressource-URL'en, kan få en hurtig proxywebside eller fejl i stedet for rapporten. Sammenlign status, indhold og faktisk destination, før du tolker det hurtige svar som bedre ydeevne.
openConnection(Proxy) lader ressource-stien blive på destinations-URI'en. Behold også værtsnavnet til HTTPS-certifikatvalidering; ændres det til mellemleddet, kan det tilføje et navnemismatch til routingfejlen.
Hvis applikationen opretter en anden HTTP-klient, så brug den klient eller dens connection-factory-grænseflade. Et URLConnection-proxyobjekt kan ikke konfigurere en sti, der aldrig kalder denne API.