Fragen Sie die Standardrichtlinie nach der exakten URL, die fehlschlägt:

var destination = new Uri("https://example.com/");
var proxy = HttpClient.DefaultProxy;
Console.WriteLine(proxy.IsBypassed(destination));
Console.WriteLine(proxy.GetProxy(destination));

Verwenden Sie die Namespaces System und System.Net.Http. Halten Sie private Informationen zum zurückgegebenen Endpunkt aus öffentlichen Protokollen heraus.

BeobachtungBedeutung
IsBypassed(destination)Ob diese Richtlinie für diese URL direktes Routing wählt.
GetProxy(destination)Ein Richtlinienergebnis; WebProxy kann das ursprüngliche Ziel zurückgeben bei Umgehung.
Eine echte Anforderung über den fehlschlagenden ClientBeleg dafür, ob die gewählte Route nutzbar war.
Ein Quelladressbericht von der ZielseiteDer für diese Anforderung beobachtete Ausgang.

HttpClient.DefaultProxy liefert Standardrouting, wenn der Handler keine explizite Proxykonfiguration hat, und seine Initialisierung hängt von der Plattform ab. Ein anderer zugewiesener Proxy oder deaktivierte Proxynutzung kann anders wählen. Prüfen Sie den tatsächlichen Handler, nicht nur einen frischen Diagnoseclient.

Ein Dienst kann auch mit einer anderen Benutzerumgebung laufen. Halten Sie gewählten Proxy, Umgehungsentscheidung und Anforderungsergebnis getrennt, wenn Sie ihn mit einer interaktiven Anwendung vergleichen. Dieser Code öffnet keine Zielverbindung und misst keine Ausgangs-IP; sammeln Sie solche Belege bei Bedarf über denselben Client und dieselbe Route.

Ähnliche Artikel