An der Rust-Crate headless_chrome bestëmmt d'Startastellung vum Browser en HTTP-Vermëttler. Den Fetch-Handler vum Tab liwwert de Kont, wann Chromium dofir freet:

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()?;

D'ëmleiend Funktioun gëtt Feeler weider, an proxy_user a proxy_password si String-Wäerter aus der bestehender Kontkonfiguratioun vun der Applikatioun. Richt d'Authentifikatioun an, ier d'Navigatioun d'Erausfuerderung ausléise kann.

Dat zweet Argument vun enable_fetch aktivéiert Authentifikatiouns-Eventer. Chromium behandelt Benotzerinformatiounen an --proxy-server net als dësen Austausch vun Anmeldedaten.

Halt de Browser an den Tab fir d'Aarbecht lieweg. Wann zousätzlech eng eege Fetch-Interceptioun installéiert ass, bestëmmt wien aushale Requesten weiderféiert a wien Erausfuerderunge beäntwert; en ongeléisten aushale Request kann d'Navigatioun blockéieren.

Dës einfach Authentifikatioun am Tab setzt déi virgesinn Proxy-Erausfuerderung viraus. Aarbechtsfloss mat Authentifikatioun vun engem aneren Origin brauch eng explizit Ofgrenzung vun der Erausfuerderung, amplaz de Vermëttlerkont fir all Server ze benotzen. Chromium seng SOCKS5-Beschränkung bei Benotzernumm a Passwuert ass och getrennt vun dësem HTTP-Authentifikatiounspad.

Ähnlech Artikelen