chromedp.ProxyServer ແມ່ນຕົວເລືອກໃນການເປີດບຣາວເຊີ. ໃຫ້ນຳໃຊ້ມັນກັບ allocator ທີ່ສ້າງຂະບວນການ 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/"),
)

ໂຄດນີ້ຢູ່ໃນຟັງຊັນທີ່ມີຢູ່ແລ້ວຂອງແອັບພລິເຄຊັນ ພ້ອມກັບການຈັດການຂໍ້ຜິດພາດປົກກະຕິສຳລັບ err. NewContext ສືບທອດ allocator ຈາກ allocCtx. context ທີ່ສ້າງຈາກ parent ອື່ນອາດສ້າງບຣາວເຊີອື່ນໂດຍບໍ່ມີຕົວເລືອກນັ້ນ.

URL proxy ກຳນົດຕົວຮັບຟັງ HTTP; ຜູ້ສະໝັກສາທາລະນະມີຢູ່ໃນ ລາຍຊື່ HTTP proxy; ໜ້າຍັງເປັນປາຍທາງ HTTPS. ProxyServer ແມ່ນໄປຫາທຸງ --proxy-server ຂອງ Chromium ບໍ່ແມ່ນການຕັ້ງຄ່າ proxy net/http ຂອງ Go.

Chromium ບໍ່ຮັບຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານທີ່ຝັງຢູ່ໃນ URL proxy ແບບຕັ້ງດ້ວຍມື. ປາຍທາງທີ່ຕ້ອງມີການພິສູດຕົວຕ້ອງການການພິສູດຕົວຂອງບຣາວເຊີທີ່ຮອງຮັບ ຫຼື ການຈັດສັນຕົວກາງ; ການເພີ່ມ user:password ໃສ່ທຸງນີ້ບໍ່ເທົ່າກັບການພິສູດຕົວ URL ໃນ HTTP client. ການໄຫຼຂອງເຫດການພິສູດຕົວ CDP ຂອງ Chrome ແມ່ນທາງໜຶ່ງທີ່ຮອງຮັບສຳລັບຈັດການສິ່ງທ້າທາຍ proxy ທີ່ຕັ້ງໃຈ.

ຮັກສາ allocator ໃຫ້ຢູ່ຈົນວຽກຂອງບຣາວເຊີສຳເລັດ. ການຍົກເລີກມັນກໍເປັນສ່ວນໜຶ່ງຂອງການເຮັດຄວາມສະອາດຂະບວນການ ຂະນະທີ່ການຍົກເລີກແທັບກຳນົດຂອບເຂດຂອງ context ບຣາວເຊີທີ່ກ່ຽວຂ້ອງ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ