DefaultTransport standard i Go e vendos Proxy në ProxyFromEnvironment. Një &http.Transport{} i ndërtuar veçmas ka funksion Proxy nil, që nuk zgjedh asnjë proxy.

Ky ndryshim mund të shfaqet pasi shtohet një transport vetëm për të ndryshuar një afat. Ndërsa parazgjedhja standarde është ende e instaluar, klonojeni dhe ndryshoni fushën që ju nevojitet:

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

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

Kloni ruan zgjedhjen e proxy-t nga mjedisi dhe cilësimet e tjera parazgjedhëse të transportit. Verifikimi i tipit supozon se aplikacioni nuk e ka zëvendësuar DefaultTransport me një RoundTripper tjetër.

Për një transport të ndërtuar qëllimisht nga zeroja, vendosni Proxy: http.ProxyFromEnvironment në mënyrë eksplicite kur kjo është politika e tij e rrugëtimit. Një funksion eksplicit ProxyURL shpreh një politikë tjetër: një ndërmjetës i zgjedhur.

Konfiguroni transportin përpara se kërkesat e njëkohshme ta përdorin, më pas ripërdoreni atë për ngarkesën e punës. Ndryshimi i një objekti parazgjedhës të përbashkët mund të ndikojë klientë të palidhur.

Cilësimet e personalizuara TLS janë të veçanta. Çaktivizimi i verifikimit të certifikatës nuk kërkohet për të ruajtur zbulimin e proxy-t dhe do të ndryshonte sigurinë e çdo kërkese HTTPS që përputhet.

Artikuj të ngjashëm