Старите отговори препоръчват допълнителен SOCKS манипулатор, защото са насочени към по-стар .NET мрежов стек. Модерен поддържан .NET HTTP стек може да използва документираните SOCKS прокси URI схеми.

var handler = new HttpClientHandler
{
    Proxy = new WebProxy("socks5://203.0.113.10:1080"),
    UseProxy = true
};
using var client = new HttpClient(handler);

Крайната точка е само илюстративна. Списъкът със SOCKS5 прокси сървъри предоставя публични кандидати за този socks5 WebProxy URI; използвайте версията, поддържана от действителния манипулатор. Проверете целевата рамка, средата за изпълнение, платформата и действителния манипулатор, използван от приложението, преди да приложите този пример към по-стар .NET Framework процес.

Текущата документация на Microsoft за прокси изброява socks4, socks4a и socks5. Тези имена описват поведението на протокола. Само номер на порт не избира версията на SOCKS, а изписването socks5h в curl не е универсална URI схема, приемана от всеки клиент.

За удостоверена SOCKS5 услуга конфигурирайте идентификационните данни според поддържания от манипулатора интерфейс. SOCKS4 и SOCKS4a не предоставят същия механизъм за удостоверяване с парола.

URL адресът на дестинацията остава непроменен. HTTPS заявката все още установява и проверява TLS на дестинацията през прокси пътя; добавянето на SOCKS не е причина да се изключи тази проверка.

Подобни статии