Как обрабатывать сообщения об ошибках с помощью retrofit + сопрограммы - PullRequest
1 голос
/ 21 апреля 2019

Я новичок с сопрограммами.Попытка использовать модификацию + сопрограммы + CoroutineCallAdapterFactory Джейка Уортона с помощью этого учебного пособия

Но не поймите, как обрабатывать ошибки ответа json.Например, ошибка может быть такой:

{
  "code": 105,
  "error": "invalid field name: bl!ng"
} 

Я думаю, что добавление полей code и error (и проверка объекта на наличие нулевых полей) в TmdbMovie класс - это неправильно.А потом - как использовать поля ошибок после запуска сопрограммы в TmdbViewModel ?

1 Ответ

0 голосов
/ 22 апреля 2019

try/catch await в соответствии с рекомендациями @JakeWharton в этом выпуске

try {
    youService().await()
} catch(ex: HttpException) {
    // do your handling here
}
...