När go-ieproxy redan är tillgängligt och standardtransporten fortfarande är installerad kopplar du in dess förfrågningsmedvetna proxyfunktion:

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

Importera net/http, time och github.com/mattn/go-ieproxy och skicka arbetslastens förfrågningar genom client. Typpåståendet kräver att DefaultTransport förblir en http.Transport.

GetProxyFunc täcker statiska inställningar, ett explicit skript för automatisk konfiguration och fullt automatisk identifiering. Dess Windows-sökning använder den aktuella användarens konfiguration och faller tillbaka på registret om det första API-anropet misslyckas.

OverrideEnvWithStaticProxy gör ett annat val: den exporterar manuella inställningar och kan inte bevara automatiska beslut per destination. Använd den konverteringen bara för en medvetet statisk policy.

För en Windows-tjänst kan den aktuella användaren skilja sig från skrivbordsanvändaren vars webbläsare fungerar.Kontrollera tjänstekontot och den faktiska destinationen när du jämför resultatet. Identifieringen ger en ruttkandidat, inte autentisering eller en garanti för att slutpunkten går att nå.

Relaterade artiklar