SOCKS прокси у .NET HttpClient: подржане URI шеме
Користите документоване SOCKS прокси URI шеме компатибилног .NET HTTP руковаоца уместо претпоставке да су стари рецепти трећих страна још потребни.
Стари одговори препоручују додатни 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-а, а curl-ов запис socks5h није универзална URI шема коју прихвата сваки клијент.
За аутентификовану SOCKS5 услугу конфигуришите акредитиве према интерфејсу који руковалац подржава. SOCKS4 и SOCKS4a не пружају исти механизам аутентификације лозинком.
URL одредишта остаје непромењен. HTTPS захтев и даље успоставља и проверава TLS одредишта кроз путању проксија; додавање SOCKS-а није разлог да се та провера искључи.