다음 JSON 응답이 있습니다.GSON 던져 "예상 BEGIN_OBJECT하지만 BEGIN_ARRAY"?
{"message":"[{\"first_name\":\"Sushant\",\"last_name\":\"Bhatnagar\",\"receiver_id\":\"19\",\"docket_number\":\"Test12\",\"status\":\"open\"}]","code":200,"format":"json"}
나는 다음과 같이 구문 분석을 위해 두 개의 클래스를 만들 수있다 : -
public class JsonResponse implements Serializable {
public String code;
public String format;
public List<Message> message;
}
공용 클래스 메시지가 구현 직렬화 {
public String first_name;
public String last_name;
public String receiver_id;
public String docket_number;
public String status;
}
G 사용 구문 분석 JSON에 대한 SOAP, 오류가 발생했습니다. 구문 분석 JSON에 대한 코드는 다음과 같습니다 -
public static JsonResponse readDockets(String mobileNumber) {
JsonResponse res = new JsonResponse();
HttpClient client = new DefaultHttpClient();
String service = "http://api.pod.iamwhiney.com:8994/api.php?path=/deliveryRecord/refresh/"+"9968395206";
HttpGet httpGet = new HttpGet(service);
try {
HttpResponse response = client.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
HttpEntity getResponseEntity = response.getEntity();
InputStream httpResponseStream = getResponseEntity.getContent();
Reader inputStreamReader = new InputStreamReader(httpResponseStream);
Gson gson = new Gson();
res = gson.fromJson(inputStreamReader, JsonResponse.class);
} else {
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return res;
}