Zeptejte se .NET, jaký proxy použije pro URL
Prohlédněte volbu výchozího proxy pro přesný cíl, včetně rozhodnutí o obejití a explicitních přepsání HttpClient.
Zeptejte se výchozí politiky na přesnou URL, která selhává:
var destination = new Uri("https://example.com/");
var proxy = HttpClient.DefaultProxy;
Console.WriteLine(proxy.IsBypassed(destination));
Console.WriteLine(proxy.GetProxy(destination));Použijte obory názvů System a System.Net.Http. Uchovávejte soukromé údaje o vráceném koncovém bodu mimo veřejné protokoly.
| Pozorování | Význam |
|---|---|
IsBypassed(destination) | Zda tato politika volí přímé směrování pro tuto URL. |
GetProxy(destination) | Výsledek politiky; WebProxy může vrátit původní cíl při obejití. |
| Skutečný požadavek přes selhávajícího klienta | Důkaz o tom, zda byla zvolená trasa použitelná. |
| Zpráva o zdrojové adrese ze strany cíle | Výstup pozorovaný u tohoto požadavku. |
HttpClient.DefaultProxy poskytuje výchozí směrování, když obslužná rutina nemá explicitní konfiguraci proxy, a jeho inicializace závisí na platformě. Jiný přiřazený proxy nebo vypnuté používání proxy může zvolit jinak. Prohlédněte skutečnou obslužnou rutinu, ne jen nového diagnostického klienta.
Služba může běžet i v jiném uživatelském prostředí. Při srovnání s interaktivní aplikací udržujte zvolený proxy, rozhodnutí o obejití a výsledek požadavku oddělené. Tento kód neotevírá žádné připojení k cíli a neměří žádnou výstupní IP; takové důkazy v případě potřeby shromážděte přes stejného klienta a trasu.