Gdy go-ieproxy jest już dostępny, a standardowy transport domyślny jest nadal zainstalowany, podłącz jego funkcję proxy uwzględniającą żądanie:

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

Zaimportuj net/http, time i github.com/mattn/go-ieproxy i kieruj żądania obciążenia przez client. Asercja typu wymaga, aby DefaultTransport pozostał http.Transport.

GetProxyFunc obejmuje ustawienia statyczne, jawny skrypt automatycznej konfiguracji i w pełni automatyczne wykrywanie. Jego wyszukiwanie w Windows korzysta z konfiguracji bieżącego użytkownika i wraca do rejestru, jeśli pierwsze wywołanie API się nie powiedzie.

OverrideEnvWithStaticProxy dokonuje innego wyboru: eksportuje ustawienia ręczne i nie potrafi zachować automatycznych decyzji dla każdego celu. Używaj tej konwersji tylko do celowo statycznej polityki.

W przypadku usługi Windows bieżący użytkownik może różnić się od użytkownika pulpitu, którego przeglądarka działa.Sprawdź konto usługi i rzeczywisty cel, porównując wynik. Wykrywanie daje kandydata trasy, a nie uwierzytelnienie ani gwarancję, że punkt końcowy jest osiągalny.

Powiązane artykuły