HtmlUnit-এর WebClient-এ প্রক্সি সেট করুন
পৃষ্ঠা লোড করার আগে HtmlUnit-এর নিজস্ব ProxyConfig কনফিগার করুন, যার মধ্যে এন্ডপয়েন্ট স্কিম ও রেগুলার এক্সপ্রেশন বাইপাস নিয়ম রয়েছে।
import org.htmlunit.ProxyConfig;
import org.htmlunit.WebClient;
try (WebClient browser = new WebClient()) {
ProxyConfig proxy =
new ProxyConfig("proxy.example.net", 8080, "http");
proxy.addHostsToProxyBypass("localhost");
browser.getOptions().setProxyConfig(proxy);
browser.getPage("https://example.net/");
}
নেভিগেশনের আগে পৃষ্ঠা লোড করা WebClient-এ ProxyConfig সেট করুন। এটি org.htmlunit নেমস্পেস ব্যবহার করে; পুরোনো নির্ভরতাগুলো com.gargoylesoftware.htmlunit ব্যবহার করত এবং ভিন্ন কনস্ট্রাক্টর দিতে পারে।
এই পাবলিক-পৃষ্ঠার উদাহরণের জন্য প্রক্সি হোস্ট ও পূর্ণসংখ্যা পোর্টকে HTTP প্রক্সি তালিকা থেকে একটি অননুমোদিত প্রার্থী দিয়ে প্রতিস্থাপন করুন। কনস্ট্রাক্টরের "http" মধ্যস্থকারীকে বর্ণনা করে, এমনকি HTTPS পৃষ্ঠার জন্যও। হোস্টনেম আর্গুমেন্টে URL প্রিফিক্স রাখবেন না বা শুধু গন্তব্যের সঙ্গে মেলাতে প্রোটোকল পরিবর্তন করবেন না।
বাইপাস মান হলো রেগুলার এক্সপ্রেশন, PAC নিয়ম বা কমা-বিভক্ত এনভায়রনমেন্ট তালিকা নয়। কোনো অনুরোধ অপ্রত্যাশিতভাবে সরাসরি গেলে, অনুরোধকৃত হোস্টকে সেই প্যাটার্নগুলোর সঙ্গে তুলনা করুন এবং নিশ্চিত করুন যে এটি এই WebClient ব্যবহার করছে।
আলাদাভাবে তৈরি WebClient বা HTTP ক্লায়েন্ট এই কনফিগারেশন অবজেক্ট উত্তরাধিকার পায় না। একসঙ্গে চলা অনুরোধের চারপাশে গ্লোবাল অবস্থা বদলানোর বদলে পুনর্ব্যবহারযোগ্য ইনস্ট্যান্সগুলো তাদের কাজের আগে কনফিগার করুন। গন্তব্য যাচাই ও ওয়েবসাইট লগইন আলাদা থাকে; প্রমাণিত প্রক্সির জন্যও ইনস্টল করা HtmlUnit সংস্করণের ক্রেডেনশিয়াল ইন্টারফেস প্রয়োজন। উদাহরণস্বরূপ, HtmlUnit 4.21.0 প্রক্সি ক্রেডেনশিয়াল হোস্ট ও পোর্ট অনুযায়ী সীমিত করে।