import org.htmlunit.ProxyConfig;
import org.htmlunit.WebClient;

try (WebClient browser = new WebClient()) {
    ProxyConfig proxy =
        new ProxyConfig("proxy.example.net", 8080, "http");
    proxy.addHostsToProxyBypass("localhost");
    browser.getOptions().setProxyConfig(proxy);

    browser.getPage("https://example.net/");
}

Ustaw ProxyConfig w WebClient, który wczytuje stronę przed nawigacją. Wykorzystuje to przestrzeń nazw org.htmlunit; starsze zależności używały com.gargoylesoftware.htmlunit i mogą udostępniać inne konstruktory.

Zastąp host proxy i port całkowity nieuwierzytelnionym kandydatem z listy proxy HTTP na potrzeby tego przykładu strony publicznej. "http" konstruktora opisuje pośrednika, nawet dla strony HTTPS. Nie umieszczaj prefiksu URL w argumencie nazwy hosta ani nie zmieniaj protokołu tylko po to, by dopasować się do celu.

Wartości omijania to wyrażenia regularne, a nie reguły PAC ani lista środowiska oddzielona przecinkami. Jeśli żądanie nieoczekiwanie idzie bezpośrednio, porównaj żądany host z tymi wzorcami i potwierdź, że używa tego WebClient.

Osobno utworzony WebClient lub klient HTTP nie dziedziczy tego obiektu konfiguracji. Konfiguruj instancje wielokrotnego użytku przed ich pracą, zamiast zmieniać stan globalny wokół równoległych żądań. Weryfikacja celu i logowanie do witryny pozostają oddzielne; uwierzytelnione proxy wymaga także interfejsu poświadczeń zainstalowanej wersji HtmlUnit. Na przykład HtmlUnit 4.21.0 ogranicza poświadczenia proxy według hosta i portu.

Powiązane artykuły