Περιορίστε τα διαπιστευτήρια proxy του HtmlUnit στον κεντρικό υπολογιστή proxy
Ρυθμίστε έναν proxy του HtmlUnit και χρησιμοποιήστε το εύρος host/port του παρόχου διαπιστευτηρίων, με πεδία domain και workstation για NTLM.
Η ρύθμιση proxy του HtmlUnit επιλέγει τον ενδιάμεσο, και ο πάροχος διαπιστευτηρίων του παρέχει τον λογαριασμό για αυτόν τον host και τη θύρα. Για proxy 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 του λογαριασμού proxy ανάλογα με το περιβάλλον· ο ιστότοπος προορισμού δεν είναι το πεδίο domain του NTLM.
Για μια γενική καταχώριση ονόματος χρήστη και κωδικού, ο ίδιος πάροχος προσφέρει addCredentials με όνομα χρήστη, κωδικό ως πίνακα char, host, port και realm. Ένα null realm ισχύει για οποιοδήποτε realm σε αυτό το περιορισμένο endpoint.
Χρησιμοποιήστε την υπερφόρτωση που ταιριάζει με το σχήμα ελέγχου ταυτότητας του proxy και την εξάρτηση που έχει πράγματι αναπτυχθεί. Τα παλιά παραδείγματα HtmlUnit 2.x χρησιμοποιούν άλλα ονόματα πακέτων και μπορεί να έχουν υπογραφές κωδικού ως συμβολοσειράς· ο παραπάνω κώδικας χρησιμοποιεί το API 4.21.0.