Разбор только выбранного узла JSON с использованием GSON
Через веб-сервис, который я не могу изменить, я получаю ответ JSON в следующем формате:
{
"response": {
"profile": {
"id": 8873,
....
....
}
}
}
Я использую Retrofit с GSON, чтобы наконец использовать проанализированный JSON, хранящийся в POJO.
Есть ли способ, с помощью которого я могу напрямую получить данные, которые находятся внутри profile
объект, в POJO, и пропустить обработку response
?
Я в принципе не хочу писать дополнительный класс для хранения объекта response
,
1 ответ
Если вы используете json lib, вы можете сначала получить тело ответа, а затем использовать gson, чтобы превратить эту строку json в POJO следующим образом.
import net.sf.json.JSONObject;
public void partJson() {
String response = "{\n" +
" \"response\": {\n" +
" \"profile\": {\n" +
" \"id\": 8873\n" +
" }\n" +
" }\n" +
"}";
JSONObject responseObject = new JSONObject().fromObject(response);
JSONObject jsonObject = responseObject.optJSONObject("response");
}