Как получить сообщение об ошибке из 422 Unprocessable Entity response
Я делаю вызов API, который возвращает мне это
Ответ {protocol = http / 1.1, code = 422, message = Unprocessable Entity, url = https://someapi/endpoint}
В журналах вместе с ответом я получаю следующее:
{"message": "Ошибка проверки","ошибки":{"электронная почта":["уже занята"]}}
Я работаю над приложением для Android, которое имеет функцию создания профиля, и я хочу перенаправить пользователя обратно, чтобы он мог изменить свой адрес электронной почты при получении этого ответа, но для этого мне нужно получить и обработать сообщение об ошибке.
Как я могу получить сообщение от тела ошибки? Я пытался так:
response.message ()
Но я получаю только
Необработанный объект
1 ответ
Попробуйте как ниже
.subscribe(res-> {
//success case
},
t -> {
if (t instanceof HttpException) {
if (((HttpException) t).code() == 422) {
String errorResponse=((HttpException) t).response().errorBody().string();
//your validations
}
} else {
t.printStackTrace();
}
});
Я надеюсь, что это поможет вам:-)