ExecAllocator ನಲ್ಲಿ chromedp ನ ProxyServer ಅನ್ನು ಹೊಂದಿಸಿ
ProxyServer ಹೊತ್ತ ExecAllocator ನಿಂದ ಬ್ರೌಸರ್ context ರಚಿಸಿ, ಉದ್ದೇಶಿತ Chromium ಪ್ರಕ್ರಿಯೆ ತನ್ನ proxy ಫ್ಲ್ಯಾಗ್ ಪಡೆಯಲು.
chromedp.ProxyServer ಬ್ರೌಸರ್ ಚಾಲನೆಯ ಆಯ್ಕೆಯಾಗಿದೆ. Chromium ಪ್ರಕ್ರಿಯೆಯನ್ನು ರಚಿಸುವ allocator ಗೆ ಅದನ್ನು ಅನ್ವಯಿಸಿ:
opts := append(chromedp.DefaultExecAllocatorOptions[:],
chromedp.ProxyServer("http://proxy.example:8080"),
)
allocCtx, cancelAllocator := chromedp.NewExecAllocator(
context.Background(), opts...,
)
defer cancelAllocator()
tabCtx, cancelTab := chromedp.NewContext(allocCtx)
defer cancelTab()
err := chromedp.Run(tabCtx,
chromedp.Navigate("https://www.example.com/"),
)
ಕೋಡ್ ಅಪ್ಲಿಕೇಶನ್ನ ಇರುವ ಕಾರ್ಯದಲ್ಲೇ ಇರಬೇಕು, err ಗಾಗಿ ಸಾಮಾನ್ಯ ದೋಷ ನಿರ್ವಹಣೆಯೊಂದಿಗೆ. NewContext allocCtx ನಿಂದ allocator ಅನ್ನು ಆನುವಂಶಿಕವಾಗಿ ಪಡೆಯುತ್ತದೆ. ಬೇರೆ parent ನಿಂದ ರಚಿಸಿದ context ಆ ಆಯ್ಕೆ ಇಲ್ಲದೆ ಬೇರೆ ಬ್ರೌಸರ್ ರಚಿಸಬಹುದು.
proxy URL ಒಂದು HTTP listener ಅನ್ನು ಗುರುತಿಸುತ್ತದೆ; ಸಾರ್ವಜನಿಕ ಅಭ್ಯರ್ಥಿಗಳು HTTP proxy ಪಟ್ಟಿಯಲ್ಲಿ ಲಭ್ಯವಿವೆ; ಪುಟ HTTPS ಗಮ್ಯವಾಗಿಯೇ ಉಳಿಯುತ್ತದೆ. ProxyServer Chromium ನ --proxy-server ಫ್ಲ್ಯಾಗ್ಗೆ ನಕ್ಷೆಯಾಗುತ್ತದೆ, Go ನ net/http proxy ಸಂರಚನೆಗಲ್ಲ.
Chromium ಕೈಯಿಂದ ನೀಡಿದ proxy URL ನಲ್ಲಿ ಎಂಬೆಡ್ ಆದ username/password ಅನ್ನು ಸ್ವೀಕರಿಸುವುದಿಲ್ಲ. ದೃಢೀಕೃತ endpoint ಗೆ ಬೆಂಬಲಿತ ಬ್ರೌಸರ್ ದೃಢೀಕರಣ ಅಥವಾ ಮಧ್ಯವರ್ತಿ ವ್ಯವಸ್ಥೆ ಬೇಕು; ಈ ಫ್ಲ್ಯಾಗ್ಗೆ user:password ಸೇರಿಸುವುದು HTTP client URL ದೃಢೀಕರಣಕ್ಕೆ ಸಮವಲ್ಲ. Chrome ನ CDP ದೃಢೀಕರಣ ಘಟನಾ ಹರಿವು ಉದ್ದೇಶಿತ proxy ಸವಾಲನ್ನು ನಿಭಾಯಿಸಲು ಬೆಂಬಲಿತ ಮಾರ್ಗಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ.
ಬ್ರೌಸರ್ ಕೆಲಸ ಮುಗಿಯುವವರೆಗೆ allocator ಅನ್ನು ಜೀವಂತವಾಗಿರಿಸಿ. ಅದರ ರದ್ದತಿಯೂ ಪ್ರಕ್ರಿಯೆ ಸ್ವಚ್ಛತೆಯ ಭಾಗ, ಆದರೆ tab ರದ್ದತಿ ಸಂಬಂಧಿತ ಬ್ರೌಸರ್ context ಅನ್ನು ಮಿತಿಗೊಳಿಸುತ್ತದೆ.