Iestatīt chromedp ProxyServer uz ExecAllocator
Izveidojiet pārlūka kontekstu no ExecAllocator, kas nes ProxyServer, lai paredzētais Chromium process saņemtu savu proxy karodziņu.
chromedp.ProxyServer ir pārlūka palaišanas opcija. Piemērojiet to tam allocator, kas izveido Chromium procesu:
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/"),
)
Kods pieder pie lietotnes esošās funkcijas, ar parastu kļūdu apstrādi err. NewContext manto allocator no allocCtx. Konteksts, kas izveidots no cita vecāka, var izveidot citu pārlūku bez šīs opcijas.
Proxy URL norāda HTTP klausītāju; publiskie kandidāti ir pieejami HTTP proxy sarakstā; lapa joprojām ir HTTPS galamērķis. ProxyServer atbilst Chromium karodziņam --proxy-server, nevis Go net/http proxy konfigurācijai.
Chromium nepieņem lietotājvārdu un paroli, kas iekļauti manuāli norādītā proxy URL. Autentificētam galapunktam nepieciešama atbalstīta pārlūka autentifikācija vai starpnieka risinājums; user:password pievienošana šim karodziņam nav līdzvērtīga URL autentifikācijai HTTP klientā. Chrome CDP autentifikācijas notikumu plūsma ir viens no atbalstītajiem veidiem, kā risināt paredzēto proxy izaicinājumu.
Turiet allocator dzīvu, līdz pārlūka darbs ir pabeigts. Tā atcelšana arī ietilpst procesa tīrīšanā, savukārt cilnes atcelšana ierobežo saistīto pārlūka kontekstu.