2009-05-27 17 views
7

Estoy desarrollando una utilidad de mensajería de Twitter usando Twitter API (twitterizer). Pero dado que estoy dentro de un proxy corporativo, obtengo el error '407 Autenticación proxy requerida'. ¿Hay alguna forma de autenticar al usuario antes de llamar a la API o usar la configuración de proxy predeterminada?Autenticación Proxy en .NET - para API externa

P.S Internamente, la API está utilizando HttpWebRequest.

Respuesta

9

Esto no responde a su pregunta. Pero el error que está obteniendo es claramente un error de autenticación Proxy.

Es posible que desee deshabilitar o habilitar el proxy.

Para desactivar el proxy, en el archivo app.config añadir la siguiente configuración

<system.net> 
    <defaultProxy enabled="false" useDefaultCredentials="false"> 
    <proxy/> 
    <bypasslist/> 
    <module/> 
    </defaultProxy> 
</system.net> 

Para habilitar el proxy y utilizar la configuración de proxy predeterminado (especificado en IE) añadir esta configuración en el App.config

<system.net> 
    <defaultProxy enabled="true" useDefaultCredentials="true"> 
    <proxy/> 
    <bypasslist/> 
    <module/> 
    </defaultProxy> 
</system.net> 
+1

¡Muchas gracias! Puedo usar la configuración predeterminada del proxy usando useDefaultCredentials = "true" No sabía esto ... ¡Gracias! – devnull

3

Una de las posibles soluciones programáticas es crear proxy siguiente:

IWebProxy proxy=HttpWebRequest.GetSystemWebProxy(); 
proxy.Credentials = CredentialCache.DefaultCredentials; 

y luego asigne esto a cualquier objeto que realice la llamada de red y acepte un proxy, por ejemplo:

WebClient client = new WebClient();
client.proxy = proxy;