Получение "Ожидаемый BEGIN_ARRAY, но STRING в строке 1, столбце 1, путь $" при анализе с помощью Retrofit и GSON - PullRequest
0 голосов
/ 28 ноября 2018

После поиска ответов в течение почти дня я все еще не могу понять, в чем проблема с тем, как я выполняю вызов API с Retrofit и GSON.

Мой JSON такой:

{"nombre_completo":"placeholder name","edad":"78","email":"2","genero":"1","nombre_pais":"Chile","img_perfil":"http:\/\/www.someurl.com\/imagenes\/1\/perfil\/perfilRecortada.jpg","grados":["FIGHT: 10\u00b0Dan","ANOTHER:Negro 3rd"]}

Использование плагина JSONSCHEMA2POGO или SGSON POJO-класса

private String nombre_completo;
private String edad;
private String email;
private String genero;
private String nombre_pais;
private String img_perfil;
private List<String> grados = null;

С моими реализациями GSON и Retrofit как

private static Gson gson = new GsonBuilder()
        .setLenient()
        .create();
sRetrofit = new Retrofit.Builder()
                .baseUrl(URL_API)
                .addConverterFactory(GsonConverterFactory.create(gson))
                .build();

И используя асинхронный вызов из Retrofit, я все еще получаю ошибку.

Буду очень признателен, если вы поможете мне с этим.

1 Ответ

0 голосов
/ 29 ноября 2018

Похоже, это связано с форматом данных, с которыми вы тестируете.Похоже, что gson ожидает массив объектов, но вы просто даете ему один объект.Попробуйте заключить данные теста в квадратные скобки.Более подробная информация об этой ошибке: https://github.com/google/gson/issues/966

...