2011-10-12 1 views
1

안정적인 웹 서비스에 액세스하고 싶습니다. 요청이 다음 형식이어야합니다.Android : 400 RESTful 웹 서비스에 액세스 할 때 오류 코드

GET /API/Contacts/username HTTP/1.1 
HOST: $baseuri:port 
Accept: text/xml 
Authorization: Basic ZmF0aWdhYmxlIGdlbmVyYXR= 

또한 HTTPS 프로토콜을 통해 웹 서비스를 호출하고 있습니다. folowing 내가 사용하고 코드입니다 :

HttpGet get = new HttpGet("https://secure.myapp.com/MyApp/API/Contacts/myname"); 

    get.addHeader("Accept","text/xml"); 
    get.addHeader("Authorization","Basic ZmF0aWdhYmxlIGdlbmVyYXR=");   
    get.addHeader("Host","https://secure.myapp.com"); 
    get.addHeader("Connection Use","HTTP 1.1"); 

    DefaultHttpClient client = new DefaultHttpClient(); 
    ResponseHandler objHandler = new BasicResponseHandler(); 
    String getResponse = client.execute(get,objHandler); 

하지만 오류가 점점 오전 : 400 잘못된 요청을.

코드가 정확한지 확실하지 않습니다. 헤더 (GET, POST 또는 PUT)를 명시 적으로 지정해야합니까?

제발 도와주세요 ... 는

답변

0

Ohh ... 그건 내 실수였습니다. 헤더 추가 순서를 유지하지 않았습니다. 요청에 따라 주문을 변경하면 정상적으로 작동합니다.

요청시 HOST가 첫 번째 매개 변수 여야합니다. 다음은 수정 된 코드입니다. 질문에 따옴표를 넣어 잊고에 대한

0

당신이 따옴표로 '기본 ZmF0aWdhYmxlIGdlbmVyYXR ='를 넣으면 안됩니다 .... 당신을 Thnking? 또한 웹 서비스 예제 요청 및 응답을 확인하고 모든 것이 지정되었는지 확인하십시오.

+0

죄송합니다 ... 여러분 모두를 방해

get.addHeader("Host","secure.myapp.com"); get.addHeader("Accept","text/xml"); get.addHeader("Authorization","Basic ZmF0aWdhYmxlIGdlbmVyYXR="); get.addHeader("Connection Use","HTTP 1.1"); 

죄송합니다. 사실 나는 나의 요청에 따옴표를 사용했다. 하지만 일하지 않아. – Jomia