요청에 인증 헤더를 추가하고 싶습니다. 나는 아파치 httpclient 4.0에서 DefaultHttpClient를 사용하고있다.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")
);
이 실행되고, 심지어 디버거 나는 세션 객체가 요청을하는 순간에 설정의 변수 일부 자격 증명을 참조하십시오
나는 이런 식으로 끝낼 것을 발견했다. 하지만 Charles와 웹 트래픽을 검사하고 인증 헤더가 없습니다. 바르의내용 :
호스트 : www.bla.bla
포트 : -1 Btw는
. 나는 함께 요청의 헤더를 볼 수있는 프록시로 찰스 활성화 :
HttpHost proxy = new HttpHost("127.0.0.1", 8888, "http");
httpParameters.setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
나는 내가 프록시 물건을 해제 어쨌든 경우 ... 내 헤더를 변경하지 않아야 웹 프록시에 대한 이해가없는 것 같아 또한 작동하지 않습니다 (헤더의 내용을 볼 수는 없지만 동일한 이유가 있다고 생각합니다). 위한 인증 헤더없이, How can I send HTTP Basic Authentication headers in Android?
내가 정확히 같은 요청을 얻을 : 여기 Softhinker.com의 게시물에서 설명한 것처럼
또한 요청 인터셉터를 사용했습니다.내가 뭘 잘못하고 있니? 사전에
감사합니다.
설명 및 솔루션 모두가이 스레드에 설명되어 있습니다 ... http://stackoverflow.com/questions/18108783/apache-httpclient-doesnt-set-basic-authentication-credentials –