Я пытаюсь получить значение JSON, что мой веб-сервис возвращается. Я никогда не использую JSON. Я всегда использую SOAP, но сегодня мне нужно использовать JSON, и я не знаю, как я могу получить значения.Получение значений JSON?
Мой веб-сервис возвращает этот JSON: {"cod":999,"msg":"User Data.","return":{"ID":"74","name":"FERNANDO PAIVA","email":"[email protected]"}}
.
Я хочу получить электронную почту, например, как я могу это сделать?
Я пробую это.
//make a get in web service, return a String with JSON format
public String get(String url){
String s = "";
try {
//executa o get
HttpGet httpGet = new HttpGet(url);
httpGet.addHeader("Authorization", "Basic " + getBasicAuthentication());
HttpResponse httpResponse = httpClient.execute(httpGet);
BufferedReader bReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));
//trata o retorno do get
StringBuilder stringBuilder = new StringBuilder("");
String line = "";
String lineSeparator = System.getProperty("line.separator");
while((line = bReader.readLine()) != null){
stringBuilder.append(line + lineSeparator);
}
bReader.close();
//
s = stringBuilder.toString();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return s;
}
//return a value of JSON
public String getUsuarioByEmail(){
String url = "mydomain.com.br/[email protected]";
String response = httpClient.get(url);
JSONArray jArray = null;
String ss = "";
try {
JSONObject obj = new JSONObject(response);
jArray = obj.getJSONArray("return");
for(int x = 0; x < jArray.length(); x++){
JSONObject e = jArray.getJSONObject(x);
ss = e.getString("email");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ss;
}
jArray = obj.getJSONArray ("return"); его также jsonobject –
возможный дубликат [Как разобрать JSON в Android] (http://stackoverflow.com/questions/9605913/how-to-parse-json-in-android) –
@DavidePastore не дубликат ... 2 сообщение отличное – FernandoPaiva