Rust headless_chrome: define as credenciais do proxy HTTP antes de navegar
Escolle o proxy HTTP ao iniciar o navegador e activa a autenticación Fetch na pestana headless_chrome antes de navegar.
No crate Rust headless_chrome, a configuración de inicio do navegador selecciona un intermediario HTTP. O xestor Fetch da pestana fornece a conta cando Chromium a solicita:
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()?;A función circundante propaga os erros, e proxy_user e proxy_password son valores String que proveñen da configuración de conta existente da aplicación. Configura a autenticación antes de que a navegación poida desencadear o desafío.
O segundo argumento de enable_fetch activa os eventos de autenticación. Chromium non trata a información de usuario incorporada en --proxy-server como este intercambio de credenciais.
Mantén vivos o navegador e a pestana durante o traballo. Se ademais hai instalada unha interceptación Fetch propia, define quen continúa as solicitudes en pausa e quen responde aos desafíos; unha solicitude en pausa sen resolver pode bloquear a navegación.
Esta configuración sinxela de autenticación na pestana supón o desafío de proxy previsto. Un fluxo con autenticación doutro origen necesita delimitar o desafío de forma explícita en vez de reutilizar a conta do intermediario para cada servidor. A limitación de Chromium en SOCKS5 para usuario e contrasinal tamén é independente desta ruta de autenticación HTTP.