Në Java 11 ose më të re, vendosni një ProxySelector në ndërtuesin e klientit. Vetitë proxy për të gjithë JVM-në mbeten kështu të pandryshuara:

import java.net.InetSocketAddress;
import java.net.ProxySelector;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;

public class ProxyExample {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .proxy(ProxySelector.of(
                new InetSocketAddress("203.0.113.10", 8080)))
            .connectTimeout(Duration.ofSeconds(5))
            .build();

        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://example.com/"))
            .timeout(Duration.ofSeconds(15))
            .GET()
            .build();

        HttpResponse<String> response = client.send(
            request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.statusCode());
        System.out.println(response.body());
    }
}

Zëvendësoni pikën e dokumentacionit me proxy-n tuaj HTTP; lista e proxy-ve HTTP ofron kandidatë për prova. ProxySelector.of merr një adresë socket-i: përdorni hostin pa prefiksin http:// dhe jepni portën veçmas. Zgjedh proxy HTTP, jo SOCKS sipas numrit të portës. URI-ja e kërkesës mbetet destinacioni i vërtetë.

HTTPS mund të kalojë nëpër këtë proxy HTTP me një tunel. Nuk ka nevojë të ulet siguria e destinacionit dhe konfigurimi nuk nënkupton që dëgjuesi i proxy-t vetë mbështet TLS.

Afati i lidhjes në ndërtuesin e klientit zbatohet gjatë vendosjes së lidhjes; kërkesa ka afatin e vet. Mbajini të dy të qartë, sepse një kërkesë mund të ripërdorë një lidhje ekzistuese. Përjashtimi i rrjetit, autentikimit ose tunelit mund të vijë para çdo përgjigjeje të destinacionit, ndërsa statusi i gabimit i kthyer nuk shkakton domosdoshmërisht përjashtim.

Ripërdoreni klientin për kërkesa me të njëjtën politikë rutimi që aplikacioni të përfitojë nga menaxhimi i lidhjeve të tij.

Artikuj të ngjashëm