.net - ejemplos - httpclient net core
¿Cómo autenticarse contra un proxy al usar la clase HttpClient? (2)
Logré resolver mi problema de manera muy simple a través de la configuración de proxy en app.config.
<system.net>
<defaultProxy enabled="true" useDefaultCredentials="true">
<proxy usesystemdefault="True" />
</defaultProxy>
</system.net>
Tengo una aplicación de consola basada en .NET 4 que utiliza la biblioteca HttpClient
(obtenida a través de NuGet) para recuperar datos de una API pública a través de Internet. La aplicación de la consola se encuentra detrás de un proxy. La máquina con Windows en la que se encuentra tiene la configuración de proxy correcta en Internet Explorer. Cuando la aplicación de la consola intenta acceder al mundo exterior, recibe un estado 407: "se requiere autenticación proxy".
No he escrito ningún código específico para tratar con un proxy todavía. Supongo que a partir del error 407 que la aplicación está dirigiendo al proxy no hay problema, pero el proxy no está autentificando la solicitud.
Mi pregunta es, ¿es posible configurar el HttpClient para que use las credenciales del usuario que inició sesión para autenticar el proxy? ¿Si es así, cómo?
var client = new HttpClient(webRequestHandler);
client.PostAsync(RequestUri, MyContent);
Si quisiera hacer lo mismo programáticamente, podría usar lo siguiente:
WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials;
(Estos objetos son del espacio de nombres `System.Net '').
Más información de MSDN: http://msdn.microsoft.com/en-us/library/system.net.webproxy.getdefaultproxy.aspx