Rust headless_chrome kreytində brauzerin işə salınma parametri HTTP vasitəçisini seçir. Tabın Fetch işləyicisi Chromium istəyəndə hesabı təqdim edir:

let proxy = "http://proxy.example:8080";
let options = headless_chrome::LaunchOptions::default_builder()
    .proxy_server(Some(proxy))
    .build()?;
let browser = headless_chrome::Browser::new(options)?;
let tab = browser.new_tab()?;

tab.enable_fetch(None, Some(true))?;
tab.authenticate(Some(proxy_user), Some(proxy_password))?;
tab.navigate_to("https://www.example.org/")?;
tab.wait_until_navigated()?;

Əhatə edən funksiya xətaları ötürür, proxy_user və proxy_password isə tətbiqin mövcud hesab konfiqurasiyasından gələn String dəyərləridir. Naviqasiya çağırışı yarada bilməzdən əvvəl autentifikasiyanı qurun.

enable_fetch funksiyasının ikinci arqumenti autentifikasiya hadisələrini aktivləşdirir. Chromium --proxy-server daxilindəki istifadəçi məlumatını bu etimad mübadiləsi saymır.

Brauzeri və tabı iş yükü üçün canlı saxlayın. Əgər fərdi Fetch müdaxiləsi də quraşdırılıbsa, dayandırılmış sorğuları kimin davam etdirəcəyini və çağırışlara kimin cavab verəcəyini müəyyənləşdirin; həll olunmamış dayandırılmış sorğu naviqasiyanı dayandıra bilər.

Bu sadə tab autentifikasiyası nəzərdə tutulan proksi çağırışını fərz edir. Əlaqəsiz origin autentifikasiyası olan iş axını hər server üçün vasitəçi hesabını təkrar istifadə etmək əvəzinə çağırış əhatəsini açıq şəkildə müəyyənləşdirməyi tələb edir. Chromium-un SOCKS5 istifadəçi adı və parol məhdudiyyəti də bu HTTP autentifikasiya yolundan ayrıdır.

Əlaqəli məqalələr