Tengo una aplicación que se conecta a sitios que requieren autenticación básica. Los sitios se proporcionan en tiempo de ejecución y no se conocen en tiempo de compilación.HttpClient 4.2, Autenticación básica y AuthScope
Estoy usando HttpClient 4.2.
No estoy seguro de si el código siguiente es como se supone que debo especificar la autenticación básica, pero la documentación lo sugiere. Sin embargo, no sé qué pasar en el constructor de AuthScope
. Pensé que un parámetro nulo significaba que las credenciales suministradas deberían usarse para todas las URL, pero arroja un NullPointerException
, así que claramente estoy equivocado.
m_client = new DefaultHttpClient();
UsernamePasswordCredentials credentials = new UsernamePasswordCredentials(m_userName, m_password);
((DefaultHttpClient)m_client).getCredentialsProvider().setCredentials(new AuthScope((HttpHost)null), credentials);
client.getCredentialsProvider(). setCredentials ( nuevo AuthScope (proxyHost, proxyPort), new UsernamePasswordCredentials (proxyUser, proxyPassword)); Esta es la forma correcta – MayurB