ProxyServer vum chromedp um ExecAllocator astellen
Erstellt de Browserkontext aus dem ExecAllocator, deen de ProxyServer dréit, sou datt dee virgesinnene Chromium-Prozess säi Proxy-Flag kritt.
chromedp.ProxyServer ass eng Optioun beim Starte vum Browser. Setz se op den Allocator un, deen de Chromium-Prozess erschaaft:
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/"),
)
De Code gehéiert an déi bestehend Funktioun vun der Applikatioun, mat der üblecher Fehlerbehandlung fir err. NewContext ierft den Allocator vun allocCtx. E Kontext, deem säi Parent en aneren ass, kann ouni déi Optioun en anere Browser erschaaft.
D'Proxy-URL bezeechent en HTTP-Listener; ëffentlech Kandidate ginn et an der HTTP-Proxy-Lëscht; d'Säit bleift en HTTPS-Zil. ProxyServer entsprécht dem Chromium-Flag --proxy-server, net der net/http-Proxykonfiguratioun vu Go.
Chromium akzeptéiert net de Benotzernumm an d'Passwuert, déi an enger manueller Proxy-URL agebaut sinn. En authentifizéierten Endpunkt brauch eng ënnerstëtzt Browser-Authentifikatioun oder eng Mëttlerlösung; user:password bäizesetzen ass net datselwecht wéi URL-Authentifikatioun an engem HTTP-Client. Dem Chrome säin CDP-Authentifikatiouns-Evenement-Stream ass ee vun den ënnerstëtzte Weeër fir déi geduecht Proxy-Erausfuerderung ze behandelen.
Hal den Allocator lieweg, bis d'Browseraarbecht fäerdeg ass. Seng Annulatioun gehéiert och zur Prozessbotz, wärend d'Annulatioun vum Tab de verbonne Browserkontext begrenzt.