Модификация 2 обработки ошибок синхронного вызова для ошибок 4xx
Я использую android-priority-jobqueue и использую модификацию, чтобы делать синхронные вызовы для моего остальных API, но я не уверен, как обрабатывать ошибки, такие как 401 Несанкционированные ошибки, которые я отправляю обратно json с указанием ошибки. Просто при выполнении асинхронных звонков, но я адаптирую свое приложение для менеджера по работе. ниже приведена простая попытка перехвата исключений ввода-вывода, но 401 и 422 и т. д. Как это сделать?
try {
PostService postService = ServiceGenerator.createService(PostService.class);
final Call<Post> call = postService.addPost(post);
Post newPost = call.execute().body();
// omitted code here
} catch (IOException e) {
// handle error
}
РЕДАКТИРОВАТЬ
Использование объекта отклика на модификацию стало для меня решающим аргументом, возвращение объекта отклика на модификацию позволило мне
Response<Post> response = call.execute();
if (response.isSuccessful()) {
// request successful (status code 200, 201)
Post result = response.body();
// publish the post added event
EventBus.getDefault().post(new PostAddedEvent(result));
} else {
// request not successful (like 400,401,403 etc and 5xx)
renderApiError(response);
}