Rust headless_chrome: ನ್ಯಾವಿಗೇಶನ್ಗೆ ಮೊದಲು HTTP ಪ್ರಾಕ್ಸಿ ರುಜುವಾತುಗಳನ್ನು ಹೊಂದಿಸಿ
ಬ್ರೌಸರ್ ಪ್ರಾರಂಭಿಸುವಾಗ HTTP ಪ್ರಾಕ್ಸಿ ಆಯ್ಕೆಮಾಡಿ ಮತ್ತು ನ್ಯಾವಿಗೇಶನ್ಗೆ ಮೊದಲು headless_chrome ಟ್ಯಾಬ್ನಲ್ಲಿ Fetch ದೃಢೀಕರಣವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ.
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 ದೃಢೀಕರಣ ಮಾರ್ಗದಿಂದ ಪ್ರತ್ಯೇಕವಾಗಿದೆ.