При Rust крейта headless_chrome настройката за стартиране на браузъра избира HTTP посредник. Fetch манипулаторът на раздела предоставя акаунта, когато Chromium го поиска:

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

Обграждащата функция препредава грешки, а proxy_user и proxy_password са String стойности, идващи от съществуващата конфигурация на акаунта в приложението. Настройте удостоверяването, преди навигацията да предизвика предизвикателството.

Вторият аргумент на enable_fetch включва събития за удостоверяване. Chromium не приема потребителската информация в --proxy-server за тази размяна на данни за достъп.

Пазете браузъра и раздела живи за натоварването. Ако е инсталирано и собствено Fetch прихващане, определете кой продължава спрените заявки и отговаря на предизвикателствата; неразрешена спряна заявка може да блокира навигацията.

Тази проста настройка за удостоверяване в раздела предполага предвиденото прокси предизвикателство. Работен поток с удостоверяване на чужд origin изисква изрично ограничаване на предизвикателството, вместо повторно използване на акаунта на посредника за всеки сървър. Ограничението на Chromium за SOCKS5 с потребителско име и парола също е отделно от този път за HTTP удостоверяване.

Подобни статии