Стандардни DefaultTransport у Go поставља Proxy на ProxyFromEnvironment. Засебно изграђен &http.Transport{} има nil функцију Proxy, која не бира ниједан прокси.

Ова разлика може да се појави након додавања транспорта само ради промене временског ограничења. Док је стандардна задата вредност још инсталирана, клонирајте је и промените поље које вам треба:

transport := http.DefaultTransport.(*http.Transport).Clone()
transport.ResponseHeaderTimeout = 15 * time.Second

client := &http.Client{
    Transport: transport,
    Timeout: 30 * time.Second,
}

Клон задржава избор проксија из окружења и остале задате поставке транспорта. Провера типа претпоставља да апликација није заменила DefaultTransport другим RoundTripper-ом.

За транспорт намерно изграђен од нуле, поставите Proxy: http.ProxyFromEnvironment изричито када је то његова политика усмеравања. Изричита функција ProxyURL изражава другачију политику: један изабрани посредник.

Конфигуришите транспорт пре него што га паралелни захтеви почну користити, а затим га поново употребите за радни терет. Промена заједничког задатог објекта може утицати на неповезане клијенте.

Прилагођене TLS поставке су одвојене. Онемогућавање провере сертификата није потребно да би се задржало откривање проксија и променило би безбедност сваког одговарајућег HTTPS захтева.

Повезани чланци