collector := colly.NewCollector()
switcher, err := proxy.RoundRobinProxySwitcher(
    "http://proxy-a.example:8080",
    "http://proxy-b.example:8080",
)
if err != nil {
    return err
}
collector.SetProxyFunc(switcher)
err = collector.Visit("https://www.example.com/")

ایپلیکیشن کے فنکشن میں github.com/gocolly/colly/v2 اور اس کا proxy پیکیج استعمال کریں، عام خرابی کی ہینڈلنگ برقرار رکھیں۔ درخواستوں یا غیر ہم وقت ملاقاتوں کے شروع ہونے سے پہلے چنندہ کنفیگر کریں۔ HTTP پراکسی فہرست سوئچر کے endpoint ان پٹ کے لیے عوامی امیدوار فراہم کرتی ہے۔

SetProxy ایک مقررہ endpoint چنتا ہے؛ SetProxyFunc HTTP transport کو ہر درخواست پر چننے دیتا ہے۔ اس سے ہر OnRequest کال بیک کے اندر مشترکہ کنفیگریشن بدلنے سے بچا جاتا ہے۔

اس نفاذ میں، SetProxyFunc DisableKeepAlives کو بھی true کرتا ہے۔ یہ موجودہ *http.Transport کو اپ ڈیٹ کرتا ہے، مگر مختلف transport قسم کو نئی HTTP transport سے بدل دیتا ہے۔ کسی بھی حسب ضرورت RoundTripper رویے کو جان بوجھ کر محفوظ رکھیں، بجائے یہ فرض کرنے کے کہ وہ برقرار رہے گا۔

Collector.Clone HTTP backend مشترک کرتا ہے، اس لیے کلون کی پراکسی بدلنے سے وہ مشترکہ backend بدل سکتا ہے۔ ہم وقت کام سے پہلے ملکیت طے کریں۔ باری باری چناؤ دیے گئے endpoint گھماتا ہے، تصدیق شدہ عوامی اخراج شناختیں یا خودمختار طور پر جانچی گئی دستیابی نہیں۔

متعلقہ مضامین