تقييد بيانات اعتماد الوكيل في HtmlUnit بمضيف الوكيل
اضبط وكيل HtmlUnit واستخدم نطاق المضيف/المنفذ في مزوّد بيانات الاعتماد، مع حقلي domain وworkstation من أجل NTLM.
يحدد إعداد الوكيل في HtmlUnit الوسيط، ويوفر مزوّد بيانات الاعتماد الحساب الخاص بذلك المضيف والمنفذ. بالنسبة لوكيل NTLM، توفر واجهة 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 الخاصين بحساب الوكيل وفقًا للبيئة؛ فموقع الوجهة ليس حقل domain في NTLM.
لإدخال بيانات اعتماد عامة باسم مستخدم وكلمة مرور، يوفر المزوّد نفسه الدالة addCredentials مع اسم المستخدم وكلمة المرور كمصفوفة char والمضيف والمنفذ وrealm. النطاق الفارغ ينطبق على أي realm في تلك النقطة المحددة.
استخدم التحميل الزائد (overload) المطابق لمخطط المصادقة الذي يستخدمه الوكيل والاعتمادية المنشورة فعليًا. تستخدم أمثلة HtmlUnit 2.x القديمة أسماء حزم مختلفة وقد تحتوي على توقيعات كلمة مرور نصية؛ الكود أعلاه يستخدم واجهة 4.21.0.