chromedp ProxyServer'ini ExecAllocator'da sozlash
ProxyServer olib yuruvchi ExecAllocator'dan brauzer context ini yarating, ko'zlangan Chromium jarayoni o'z proxy bayrog'ini olishi uchun.
chromedp.ProxyServer brauzerni ishga tushirish opsiyasidir. Uni Chromium jarayonini yaratuvchi allocator ga qo'llang:
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/"),
)
Kod ilovaning mavjud funksiyasida bo'lishi kerak, err uchun odatiy xato bilan ishlash bilan. NewContext allocator ni allocCtx dan meros oladi. Boshqa ota-onadan yaratilgan context bu opsiyasiz boshqa brauzer yaratishi mumkin.
Proxy URL HTTP tinglovchisini bildiradi; ommaviy nomzodlar HTTP proxy ro'yxatida mavjud; sahifa HTTPS manzili bo'lib qoladi. ProxyServer Chromium ning --proxy-server bayrog'iga mos keladi, Go ning net/http proxy sozlamasiga emas.
Chromium qo'lda berilgan proxy URL ga kiritilgan foydalanuvchi nomi va parolni qabul qilmaydi. Autentifikatsiya qilingan endpoint uchun qo'llab-quvvatlanadigan brauzer autentifikatsiyasi yoki vositachi chora kerak; bu bayroqqa user:password qo'shish HTTP klient URL autentifikatsiyasiga teng emas. Chrome ning CDP autentifikatsiya hodisalari oqimi ko'zlangan proxy sinovini hal qilishning qo'llab-quvvatlanadigan yo'llaridan biri.
Brauzer ishi tugaguncha allocator ni tirik saqlang. Uni bekor qilish ham jarayonni tozalashning bir qismi, tabni bekor qilish esa tegishli brauzer context ini cheklaydi.