محدود کردن اعتبارنامههای پروکسی HtmlUnit به میزبان پروکسی
پروکسی HtmlUnit را پیکربندی کنید و از دامنه میزبان/درگاه ارائهدهنده اعتبارنامه استفاده کنید، همراه با فیلدهای domain و workstation برای NTLM.
پیکربندی پروکسی HtmlUnit واسطه را انتخاب میکند و ارائهدهنده اعتبارنامه آن حساب مربوط به همان میزبان و درگاه را تأمین میکند. برای پروکسی NTLM، API نسخه 4.21.0 در HtmlUnit متدی اختصاصی دارد:
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 فراهم میکند. realm تهی برای هر realm روی آن نقطه پایانی محدود اعمال میشود.
از overloadی استفاده کنید که با طرح احراز هویت پروکسی و وابستگی واقعاً مستقرشده سازگار است. نمونههای قدیمی HtmlUnit 2.x نام بستههای متفاوتی دارند و ممکن است امضای گذرواژه رشتهای داشته باشند؛ کد بالا از API نسخه 4.21.0 استفاده میکند.