پیکربندی پروکسی 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 استفاده می‌کند.

مقالات مرتبط