Chiedete ai criteri predefiniti l'URL esatto che non funziona:

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

Usate gli spazi dei nomi System e System.Net.Http. Tenete le informazioni private sull'endpoint restituito fuori dai log pubblici.

OsservazioneSignificato
IsBypassed(destination)Se questi criteri scelgono l'instradamento diretto per quell'URL.
GetProxy(destination)Un risultato dei criteri; WebProxy può restituire la destinazione originale quando viene ignorata.
Una richiesta reale tramite il client che non funzionaProva che la rotta scelta fosse utilizzabile.
Un rapporto sull'indirizzo di origine lato destinazioneL'uscita osservata per quella richiesta.

HttpClient.DefaultProxy fornisce l'instradamento predefinito quando il gestore non ha una configurazione proxy esplicita, e la sua inizializzazione dipende dalla piattaforma. Un altro proxy assegnato o uso del proxy disabilitato può scegliere diversamente. Esaminate il gestore effettivo, non solo un nuovo client diagnostico.

Un servizio può anche essere eseguito con un altro ambiente utente. Tenete separati proxy selezionato, decisione di bypass ed esito della richiesta quando lo confrontate con un'applicazione interattiva. Questo codice non apre alcuna connessione alla destinazione e non misura alcun IP di uscita; raccogliete tali prove tramite lo stesso client e la stessa rotta se necessario.

Articoli correlati