Прокси конфигурацията на HtmlUnit избира посредника, а доставчикът на идентификационни данни предоставя акаунта за този хост и порт. За NTLM прокси API-то на HtmlUnit 4.21.0 има отделен метод:

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/");
}

Класовете използват текущите пакети org.htmlunit, а HtmlPage е в org.htmlunit.html. Подайте workstation и domain на прокси акаунта според средата; целевият сайт не е полето domain за NTLM.

За обикновени идентификационни данни с потребителско име и парола същият доставчик предлага addCredentials с потребителско име, парола като char масив, хост, порт и realm. Null realm важи за всеки realm на този ограничен endpoint.

Използвайте претоварването, което отговаря на схемата за удостоверяване на проксито и на действително внедрената зависимост. Старите примери за HtmlUnit 2.x използват други имена на пакети и може да имат подписи с низова парола; кодът по-горе използва API 4.21.0.

Подобни статии