SOCKS-välityspalvelimet .NET HttpClientissä: tuetut URI-skeemat
Käytä yhteensopivan .NET HTTP-käsittelijän dokumentoituja SOCKS-välityspalvelimen URI-skeemoja sen sijaan, että olettaisit vanhojen kolmannen osapuolen ohjeiden olevan edelleen tarpeen.
Vanhat vastaukset suosittelevat ylimääräistä SOCKS-käsittelijää, koska ne kohdistuvat vanhempaan .NET-verkkopinoon. Nykyaikainen tuettu .NET HTTP -pino voi käyttää dokumentoituja SOCKS-välityspalvelimen URI-skeemoja.
var handler = new HttpClientHandler
{
Proxy = new WebProxy("socks5://203.0.113.10:1080"),
UseProxy = true
};
using var client = new HttpClient(handler);Päätepiste on vain havainnollistava. SOCKS5-välityspalvelinluettelo tarjoaa julkisia ehdokkaita tälle socks5 WebProxy -URI:lle; käytä versiota, jota todellinen käsittelijä tukee. Tarkista kohdekehys, suoritusympäristö, alusta ja sovelluksen käyttämä todellinen käsittelijä ennen tämän esimerkin soveltamista vanhempaan .NET Framework -prosessiin.
Microsoftin nykyinen välityspalvelindokumentaatio luettelee socks4, socks4a ja socks5. Nämä nimet kuvaavat protokollan toimintaa. Pelkkä porttinumero ei valitse SOCKS-versiota, eikä curlin kirjoitusasu socks5h ole yleinen URI-skeema, jonka jokainen asiakas hyväksyisi.
Autentoidulle SOCKS5-palvelulle määritä tunnistetiedot käsittelijän tukeman rajapinnan mukaisesti. SOCKS4 ja SOCKS4a eivät tarjoa samaa salasanatodennusmekanismia.
Kohde-URL pysyy muuttumattomana. HTTPS-pyyntö muodostaa ja vahvistaa edelleen kohteen TLS:n välityspalvelimen polun kautta; SOCKSin lisääminen ei ole syy poistaa tätä vahvistusta käytöstä.