Я хочу добавить заголовок аутентификации в свой запрос. Я использую DefaultHttpClient из Apache httpclient 4.0.Не удается выполнить аутентификацию с помощью DefaultHttpClient
я обнаружил, что это делается так:
URI uri = new URI("http://www.bla.bla/folder/");
String host = uri.getHost();
int port = uri.getPort();
httpClient.getCredentialsProvider().setCredentials(
new AuthScope(host, port, AuthScope.ANY_SCHEME),
new UsernamePasswordCredentials("myuser", "mypassword")
);
Это выполняется и даже с помощью отладчика я вижу некоторые учетные данные переменные из HTTPClient устанавливаются в момент делать запрос. Но я проверяю веб-трафик с Чарльзом, и нет заголовка проверки подлинности.
Содержание Варс:
хозяин: www.bla.bla
порт: -1
Btw. Я включил Чарльз в качестве прокси-сервера, чтобы увидеть заголовки запроса, с:
HttpHost proxy = new HttpHost("127.0.0.1", 8888, "http");
httpParameters.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
Я думаю, что не должно быть изменений моих заголовков, не имеет смысла для Webproxy ... в любом случае, если отключить прокси-Заткнись также не работает (хотя я не вижу содержимого заголовка, но я полагаю, что это та же самая причина).
пытался также с помощью запроса перехватчик, как описано в посте Softhinker.com здесь: How can I send HTTP Basic Authentication headers in Android?
И я получаю точно такой же запрос, без заголовка аутентификации.
Что я делаю неправильно?
Заранее спасибо.
Оба объяснения и решения рассматриваются в этой теме ... http://stackoverflow.com/questions/18108783/apache-httpclient-doesnt-set-basic-authentication-credentials –