Proxies SOCKS en .NET HttpClient: esquemas URI admitidos
Use os esquemas URI de proxy SOCKS documentados dun controlador HTTP .NET compatible en lugar de supoñer que as receitas antigas de terceiros seguen sendo necesarias.
As respostas antigas recomendan un controlador SOCKS adicional porque apuntan a unha pila de rede .NET máis antiga. Unha pila HTTP .NET moderna e admitida pode usar os esquemas URI de proxy SOCKS documentados.
var handler = new HttpClientHandler
{
Proxy = new WebProxy("socks5://203.0.113.10:1080"),
UseProxy = true
};
using var client = new HttpClient(handler);O punto de conexión é só ilustrativo. A lista de proxies SOCKS5 ofrece candidatos públicos para este URI socks5 de WebProxy; use a versión que admita o controlador real. Comprobe o marco de destino, o tempo de execución, a plataforma e o controlador real que usa a aplicación antes de aplicar este exemplo a un proceso .NET Framework máis antigo.
A documentación actual de Microsoft sobre proxies enumera socks4, socks4a e socks5. Eses nomes describen o comportamento do protocolo. Un número de porto por si só non escolle a versión de SOCKS, e a grafía socks5h de curl non é un esquema URI universal que acepte todos os clientes.
Para un servizo SOCKS5 autenticado, configure as credenciais segundo a interface que admita o controlador. SOCKS4 e SOCKS4a non proporcionan o mesmo mecanismo de autenticación por contrasinal.
O URL de destino permanece inalterado. Unha solicitude HTTPS segue establecendo e verificando o TLS do destino a través da ruta do proxy; engadir SOCKS non é motivo para desactivar esa verificación.