Prema dokumentiranoj politici proxyja iz okruženja u HttpClientu, example.internal i .example.internal podudaraju se različito. Golo ime odabire roditeljskog hosta; oblik s vodećom točkom odabire njegove poddomene.

Ako oba trebaju ići izravno, uključite oba u okruženje pri pokretanju:

export no_proxy='example.internal,.example.internal'

Spojite ih s predviđenim postojećim popisom zaobilaženja. Na sustavima gdje imena varijabli razlikuju velika i mala slova, .NET prvo provjerava proxy varijable malim, a zatim velikim slovima, pa zastarjeli no_proxy može imati prednost pred NO_PROXY.

Unutar aplikacije zadani se selektor može pregledati bez slanja HTTP zahtjeva prema odredištu:

foreach (var host in new[] {
    "example.internal", "api.example.internal", "other.internal"
})
{
    var uri = new Uri("https://" + host + "/");
    Console.WriteLine($"{host}: bypass={HttpClient.DefaultProxy.IsBypassed(uri)}");
}

Isječak koristi System i System.Net.Http. Ako je aplikacija izričito navela drugi IWebProxy, pregledajte umjesto toga stvarni proxy rukovatelja. Postavite željeno okruženje prije nego što se zadani proxy inicijalizira.

Ovo su dokumentirana pravila .NET-a. Rezultat curl-a s istim nizom ne dokazuje da je drugi klijent odabrao istu rutu, a odluka o zaobilaženju i dalje zahtijeva izravnu mrežnu dostupnost.

Povezani članci