La configuració de proxy d'HtmlUnit tria l'intermediari, i el seu proveïdor de credencials subministra el compte per a aquell amfitrió i port. Per a un proxy NTLM, l'API d'HtmlUnit 4.21.0 té un mètode dedicat:

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

Les classes utilitzen els paquets org.htmlunit actuals, amb HtmlPage a org.htmlunit.html. Indiqueu el workstation i el domain del compte de proxy segons l'entorn; el lloc de destinació no és el camp domain de NTLM.

Per a una entrada genèrica d'usuari i contrasenya, el mateix proveïdor ofereix addCredentials amb nom d'usuari, contrasenya com a matriu de char, amfitrió, port i realm. Un realm nul s'aplica a qualsevol realm en aquest punt final delimitat.

Feu servir la sobrecàrrega que correspongui a l'esquema d'autenticació del proxy i a la dependència realment desplegada. Els exemples antics d'HtmlUnit 2.x fan servir noms de paquet diferents i poden tenir signatures amb contrasenya de cadena; el codi anterior utilitza l'API 4.21.0.

Articles relacionats