Go HTTP transportini moslashtirganda ProxyFromEnvironment ni saqlang
Transport vaqt chegaralari yoki ulanish hovuzlarini moslashtirganda standart qiymatni nol qiymatli Proxy maydoni bilan almashtirish o'rniga Go muhit proksisini tanlashni saqlang.
Go standart DefaultTransport Proxy maydonini ProxyFromEnvironment ga o'rnatadi. Alohida qurilgan &http.Transport{} esa nil Proxy funksiyasiga ega, shu sababli hech qanday proksi tanlamaydi.
Bu farq faqat vaqt chegarasini o'zgartirish uchun transport qo'shilgandan keyin paydo bo'lishi mumkin. Standart qiymat hali o'rnatilgan bo'lsa, uni klonlang va kerakli maydonni o'zgartiring:
transport := http.DefaultTransport.(*http.Transport).Clone()
transport.ResponseHeaderTimeout = 15 * time.Second
client := &http.Client{
Transport: transport,
Timeout: 30 * time.Second,
}Klon muhit proksisini tanlashni va boshqa standart transport sozlamalarini saqlaydi. Tur tekshiruvi ilova DefaultTransportni boshqa RoundTripper bilan almashtirmagan deb hisoblaydi.
Ataylab noldan qurilgan transport uchun, agar bu uning marshrutlash siyosati bo'lsa, Proxy: http.ProxyFromEnvironment ni aniq belgilang. Aniq ProxyURL funksiyasi boshqa siyosatni ifodalaydi: tanlangan bitta vositachi.
Transportni bir vaqtda keladigan so'rovlar ishlatishidan oldin sozlang, so'ngra uni ish yuki uchun qayta ishlating. Umumiy standart obyektni o'zgartirish aloqasiz mijozlarga ta'sir qilishi mumkin.
Maxsus TLS sozlamalari alohida. Proksi aniqlashni saqlash uchun sertifikat tekshiruvini o'chirish shart emas va bu har bir mos keladigan HTTPS so'rovining xavfsizligini o'zgartiradi.