Ang chromedp.ProxyServer ay opsyon sa paglulunsad ng browser. Ilapat ito sa allocator na gumagawa ng prosesong 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/"),
)

Ang code ay nabibilang sa umiiral na function ng aplikasyon, kasama ang karaniwang paghawak ng error para sa err. Namamana ng NewContext ang allocator mula sa allocCtx. Ang context na ginawa mula sa ibang parent ay makakagawa ng ibang browser nang wala ang opsyon na iyon.

Tinutukoy ng URL ng proxy ang isang HTTP listener; may mga pampublikong kandidato sa listahan ng HTTP proxy; nananatiling destinasyong HTTPS ang pahina. Ang ProxyServer ay tumutugma sa flag na --proxy-server ng Chromium, hindi sa net/http proxy configuration ng Go.

Hindi tumatanggap ang Chromium ng username at password na nakapaloob sa manuwebok na URL ng proxy. Ang isang authenticated endpoint ay nangangailangan ng suportadong browser authentication o intermedyang kaayusan; ang pagdaragdag ng user:password sa flag na ito ay hindi katumbas ng URL authentication sa isang HTTP client. Ang daloy ng event ng CDP authentication ng Chrome ay isa sa mga suportadong paraan upang pangasiwaan ang nilalayong hamon ng proxy.

Panatilihing buhay ang allocator hanggang matapos ang gawain ng browser. Bahagi rin ng paglilinis ng proseso ang pagkansela nito, habang nililimitahan ng pagkansela ng tab ang kaugnay na context ng browser.

Kaugnay na mga artikulo