Når go-ieproxy allerede er tilgængelig, og den standardmæssige transport stadig er installeret, skal du tilknytte dens anmodningsbevidste proxyfunktion:

transport := http.DefaultTransport.(*http.Transport).Clone()
transport.Proxy = ieproxy.GetProxyFunc()
client := &http.Client{
    Transport: transport,
    Timeout: 30 * time.Second,
}

Importér net/http, time og github.com/mattn/go-ieproxy, og send arbejdsbyrdens anmodninger gennem client. Typeassertionen kræver, at DefaultTransport forbliver en http.Transport.

GetProxyFunc dækker statiske indstillinger, et eksplicit automatisk konfigurationsscript og fuld automatisk registrering. Dets Windows-opslag bruger den aktuelle brugers konfiguration og falder tilbage til registreringsdatabasen, hvis det første API-kald mislykkes.

OverrideEnvWithStaticProxy træffer et andet valg: den eksporterer manuelle indstillinger og kan ikke bevare automatiske beslutninger pr. destination. Brug kun den konvertering til en bevidst statisk politik.

For en Windows-tjeneste kan den aktuelle bruger afvige fra den skrivebordsbruger, hvis browser fungerer. Kontrollér tjenestekontoen og den faktiske destination, når du sammenligner resultatet. Registrering giver en rutekandidat, ikke godkendelse eller en garanti for, at slutpunktet kan nås.

Relaterede artikler