HtmlUnit'in proxy yapılandırması aracı sunucuyu seçer; kimlik bilgisi sağlayıcısı ise o host ve port için hesabı sağlar. NTLM proxy için HtmlUnit 4.21.0 API'sinde özel bir yöntem vardır:

String proxyHost = "proxy.example";
int proxyPort = 8080;
DefaultCredentialsProvider credentials = new DefaultCredentialsProvider();
credentials.addNTLMCredentials(
    user, password.toCharArray(), proxyHost, proxyPort, workstation, domain);

try (WebClient browser = new WebClient()) {
    browser.getOptions().setProxyConfig(
        new ProxyConfig(proxyHost, proxyPort, "http"));
    browser.setCredentialsProvider(credentials);
    HtmlPage page = browser.getPage("https://www.example.com/");
}

Sınıflar güncel org.htmlunit paketlerini kullanır; HtmlPage org.htmlunit.html içindedir. Proxy hesabının workstation ve domain değerlerini ortama göre verin; hedef web sitesi NTLM domain alanı değildir.

Genel bir username/password kimlik bilgisi girişi için aynı sağlayıcı addCredentials sunar: username, char dizisi parola, host, port ve realm. null realm, o kapsamdaki endpoint üzerindeki her realm için geçerlidir.

Proxy'nin kimlik doğrulama şemasına ve gerçekten dağıtılan bağımlılığa uyan overload'u kullanın. Eski HtmlUnit 2.x örnekleri farklı paket adları kullanır ve string parola imzaları içerebilir; yukarıdaki kod 4.21.0 API'sini kullanır.

İlgili makaleler