Я пытаюсь получить это в своем классе, но я получил сообщение об ошибке Ожидаемый BEGIN_OBJECT, но был STRING в строке 1 столбец 1 путь $ Мой ответ от веб-службы {{last_question}: "0", "уровень": "0", "ошибка": "0"} спасибоКак восстановить объект json с помощью retrofit 2
Json
{"last_question":"0","level":"0","error":"0"}
Activtiy
//calling from MainActivity
private void get()
{
Gson gson = new GsonBuilder()
.setLenient()
.create();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create(gson))
.build();
API mApi = retrofit.create(API.class);
Call<Example> call = mApi.getdata();
call.enqueue(new Callback<Example>()
{
@Override
public void onResponse(Call<Example> call, Response<Example> response)
{
System.out.println(response.body().getError());
}
@Override
public void onFailure(Call<Example> call, Throwable t)
{
System.out.println(t.getMessage());
}
});
}
// POJO класс
public class Example {
private String last_question;
private String level;
private String error;
//all getter andd setter are is here
}
** Ожидаемый BEGIN_OBJECT, но был STRING ** Проверьте свой ответ. кажется, является строкой, в то время как ваш код ожидает 'JSONObject'. Ваш код выглядит хорошо – Raghunandan
У меня был тот же json здесь https://api.myjson.com/bins/cw29l для тестирования, и тот же код Android работает, за исключением его запроса на получение и типа содержимого заголовка, чтобы принять приложение/json – Raghunandan