2013-08-22 1 views
1

매개 변수 중 하나에있는 서버 API에 사전 값이 필요합니다.DefaultHttpClient를 사용하여 httppost에 사전 데이터를 게시합니다.

데이터 = { "이름": "더미 이름", "전화"{ "수": "123456", "유형": "모바일"}}

예를 들어 전화 다음 매개 변수를 확인

Android 애플리케이션에서 DefaultHttpClient를 사용하고 있으며 지금까지 모든 예제는 httpPost 요청으로 기본 이름 값 쌍을 게시하는 방법을 보여줍니다.

DefaultHttpClient httpClient = new DefaultHttpClient(); 
HttpPost httpPost = new HttpPost(url); 

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); 
nameValuePairs.add(new BasicNameValuePair("id", "12345")); 
nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi")); 
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

사전을 사용하여 엔티티를 설정하는 방법이 있습니까?

+0

(-1 불분명 무엇을 요구하는지)를 와나 간단한 문자열을 게시 할 경우 ... 당신은 ... StringEntity를 사용할 수 있지만에 대한 그것은 JSON처럼 보입니다 ... – Selvin

+0

OK 그게 내가 찾고있는 것입니다. StringEntity를 사용해 보겠습니다. –

답변

0

그 모습은 여러분이 좋아하는 클래스를 만들어야한다는 것입니다. BasicNaveValuePair! 목록에 추가 할 수있는 BasicNamePhonePair 클래스와 같은 것입니다. StringEntity 나는 당신의 문제를 해결할 것이라고 생각하지 않는다. JSON 문자열을 저장하는 것이 아니라 JSON을 구문 분석해야합니다. 예를 보여줍니다 당신이 인이

당신 ... data={"name": "Dummy Name", "phone": {"number": "123456", "type": "mobile"}}

... data={"id": "12345", "stringdata": "Hi"}

은 기본적으로 당신은 "이름"과 함께 데이터 구조를 추가하는 방법을 만들어야합니다 ... 그리고 그 두 가지를 List에 추가하십시오! 종류의 당신이 저장하기 위해 무엇을 설명하기 위해

...

public class Contact { 
    string name; // "Dummy Name" 
    Phone phone;  
} 

public class Phone { 
    string number; // "123456" 
    string type;  // "mobile" 
} 
관련 문제