HtmlUnit کی پراکسی ترتیب درمیانی راستہ منتخب کرتی ہے، اور اس کا اسناد فراہم کنندہ اسی ہوسٹ اور پورٹ کے لیے اکاؤنٹ مہیا کرتا ہے۔ NTLM پراکسی کے لیے HtmlUnit 4.21.0 API میں ایک مخصوص طریقہ موجود ہے:

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 فراہم کریں؛ منزل ویب سائٹ NTLM کا domain فیلڈ نہیں ہے۔

عام username/password اسناد کے اندراج کے لیے وہی فراہم کنندہ addCredentials پیش کرتا ہے، جس میں username، char-array پاس ورڈ، host، port اور realm شامل ہیں۔ null realm اسی محدود endpoint پر کسی بھی realm پر لاگو ہوتا ہے۔

وہ overload استعمال کریں جو پراکسی کے تصدیقی طریقے اور واقعی نصب شدہ ڈیپنڈنسی سے مطابقت رکھتا ہو۔ HtmlUnit 2.x کی پرانی مثالیں مختلف پیکج نام استعمال کرتی ہیں اور string پاس ورڈ سگنیچر رکھ سکتی ہیں؛ اوپر دیا گیا کوڈ 4.21.0 API استعمال کرتا ہے۔

متعلقہ مضامین