chromedp.ProxyServer është një opsion i nisjes së shfletuesit. Zbatojeni atë në allocator-in që krijon procesin Chromium:

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/"),
)

Kodi i përket funksionit ekzistues të aplikacionit, me trajtimin e zakonshëm të gabimeve për err. NewContext trashëgon allocator-in nga allocCtx. Një kontekst i krijuar nga një prind tjetër mund të krijojë një shfletues tjetër pa atë opsion.

URL-ja e proxy-t identifikon një dëgjues HTTP; kandidatët publikë janë të disponueshëm në listën e proxy-ve HTTP; faqja mbetet një destinacion HTTPS. ProxyServer përputhet me flamurin --proxy-server të Chromium, jo me konfigurimin e proxy-t net/http në Go.

Chromium nuk pranon emrin e përdoruesit dhe fjalëkalimin e integruar në një URL proxy manuale. Një endpoint i vërtetuar kërkon vërtetim të mbështetur të shfletuesit ose një skemë ndërmjetëse; shtimi i user:password në këtë flamur nuk është i njëjtë me vërtetimin e URL-së në një klient HTTP. Rrjedha e ngjarjeve të vërtetimit CDP në Chrome është një nga rrugët e mbështetura për të trajtuar sfidën e synuar të proxy-t.

Mbajeni allocator-in gjallë derisa puna e shfletuesit të përfundojë. Anulimi i tij është gjithashtu pjesë e pastrimit të procesit, ndërsa anulimi i skedës kufizon kontekstin përkatës të shfletuesit.

Artikuj të ngjashëm