Żomm ProxyFromEnvironment meta tippersonalizza t-transport HTTP ta' Go
Żomm l-għażla tal-proxy mill-ambjent ta' Go meta tippersonalizza l-ħinijiet ta' skadenza jew il-ġabriet tal-konnessjonijiet tat-transport, minflok ma tissostitwixxi l-inizjali b'qasam Proxy vojt.
Id-DefaultTransport standard ta' Go jistabbilixxi Proxy fuq ProxyFromEnvironment. &http.Transport{} mibni b'mod separat għandu funzjoni Proxy nil, li ma tagħżel l-ebda proxy.
Din id-differenza tista' tidher wara li jiżdied transport biss biex jinbidel ħin ta' skadenza. Sakemm id-default standard għadu installat, ikklonah u biddel il-qasam li għandek bżonn:
transport := http.DefaultTransport.(*http.Transport).Clone()
transport.ResponseHeaderTimeout = 15 * time.Second
client := &http.Client{
Transport: transport,
Timeout: 30 * time.Second,
}Il-klonu jżomm l-għażla tal-proxy mill-ambjent u l-bqija tas-settings inizjali tat-transport. L-asserzjoni tat-tip tassumi li l-applikazzjoni ma bidlitx DefaultTransport b'RoundTripper ieħor.
Għal transport mibni deliberatament mill-bidu, stabbilixxi Proxy: http.ProxyFromEnvironment b'mod espliċitu meta din tkun il-politika ta' routing tiegħu. Funzjoni ProxyURL espliċita tesprimi politika differenti: intermedjarju wieħed magħżul.
Ikkonfigura t-transport qabel ma jibdew jużawh it-talbiet konkorrenti, u mbagħad erġa' użah għax-xogħol. Li tbiddel oġġett inizjali kondiviż jista' jaffettwa klijenti mhux relatati.
Is-settings TLS personalizzati huma separati. L-iżattivar tal-verifika taċ-ċertifikat mhuwiex meħtieġ biex tinżamm l-iskoperta tal-proxy, u dan ibiddel is-sigurtà ta' kull talba HTTPS li taqbel.