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/");
}

ProxyConfig-i naviqasiyadan əvvəl səhifəni yükləyən WebClient-də təyin edin. Bu, org.htmlunit ad məkanından istifadə edir; köhnə asılılıqlar com.gargoylesoftware.htmlunit istifadə edirdi və fərqli konstruktorlar təqdim edə bilər.

Proxy hostunu və tam ədəd portu bu ictimai səhifə nümunəsi üçün HTTP proxy siyahısından autentifikasiyasız namizədlə əvəz edin. Konstruktorun "http" araçını təsvir edir, hətta HTTPS səhifəsi üçün də. Hostname arqumentinə URL prefiksi qoymayın və yalnız təyinatla uyğunlaşmaq üçün protokolu dəyişməyin.

Yan keçmə dəyərləri müntəzəm ifadələrdir, PAC qaydaları və ya vergüllə ayrılmış mühit siyahısı deyil. Əgər sorğu gözlənilmədən birbaşa gedirsə, tələb olunan hostu həmin nümunələrlə müqayisə edin və onun bu WebClient-dən istifadə etdiyini təsdiqləyin.

Ayrıca yaradılmış WebClient və ya HTTP müştərisi bu konfiqurasiya obyektini miras almır. Yenidən istifadə edilə bilən nüsxələri işlərindən əvvəl konfiqurasiya edin, paralel sorğular ətrafında qlobal vəziyyəti dəyişmək əvəzinə. Təyinat yoxlaması və vebsayta giriş ayrı qalır; autentifikasiyalı proxy həm də quraşdırılmış HtmlUnit versiyasının etimadnamə interfeysini tələb edir. Məsələn, HtmlUnit 4.21.0 proxy etimadnamələrini host və porta görə məhdudlaşdırır.

Əlaqəli məqalələr