Kontrolli .NET-i NO_PROXY reegleid funktsiooniga HttpClient.DefaultProxy.IsBypassed
Loetle nii paljas domeen kui ka algpunktiga vorm, kui HttpClient peab mõlema puhul puhverserverist mööda minema, seejärel vaata üle IsBypassed.
HttpClienti dokumenteeritud keskkonnapuhverserveri poliitika järgi sobivad example.internal ja .example.internal erinevalt. Paljas nimi valib ülemhosti; algpunktiga vorm valib selle alamdomeenid.
Kui mõlemad peaksid minema otse, lisa mõlemad käivituskeskkonda:
export no_proxy='example.internal,.example.internal'
Ühenda need kavandatud olemasoleva möödasõiduloendiga. Süsteemides, kus muutujate nimedes eristatakse suur- ja väiketähti, kontrollib .NET kõigepealt väiketähelisi puhverserveri keskkonnanimesid ja seejärel suurtähelisi, nii et vananenud no_proxy võib saada eesõiguse NO_PROXY ees.
Rakenduse sees saab vaikeselektori üle vaadata, saatmata sihtkoha HTTP-päringut:
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)}");
}
Katkend kasutab nimeruume System ja System.Net.Http. Kui rakendus andis selgesõnaliselt teise IWebProxy, vaata selle asemel üle tegelik käsitleja puhverserver. Määra soovitud keskkond enne, kui vaikepuhverserver algatatakse.
Need on .NET-i dokumenteeritud reeglid. Sama stringi kasutav curl-tulemus ei tõenda, et teine klient valis sama marsruudi, ja möödasõidu otsus nõuab endiselt otsest võrguühendust.