paradoxs
@paradoxs

Best practices при обработке серверных ошибок при Ajax запросе?

Добрый день.

Прошу совета у аудитории хабра по лучшим практикам обработки серверных ошибок при Ajax запросе. Чтобы было понятно о чем идет речь, приведу пример.

Допустим, у нас есть страница с полями и кнопкой. Обычная такая страница. При нажатии кнопки происходит Ajax-запрос, к какому-нибудь методу контроллера, а контроллер честно выкидывает исключение (без разницы какое и по каким причинам). На клиенте, разумеется, это можно отловить и соответствующим образом обработать. Внимание вопрос: как наилучшим образом показать пользователю, что возникла ошибка?

Есть разные варианты. Например показать окошко alert, сделать редирект на страницу Error, перезагрузить страницу, никак не реагировать и т.д.



Ну вот собственно и все, надеюсь аудитория мне подскажет лучший вариант.
  • Вопрос задан
  • 3952 просмотра
Пригласить эксперта
Ответы на вопрос 3
merlin-vrn
@merlin-vrn
А это зависит от того, что вообще делалось.

Если вы отправляли почту через ajax, нужно честно сказать, что при отправке почты произошла ошибка. Пусть это будет не alert, но заметный div с сообщением нужен.
А если это было просто обновление списка комментариев к записи в фоновом режиме, то лучше всего промолчать, либо просто перезагрузить страницу без ajax.

Самое общее правило, какое я могу сформулировать: если ошибка произошла в ответ на явное действие пользователя, нужно сообщить, иначе — если это неважно для общего функционала сайта, желательно обработать по-тихому. Но вообще важен контекст. Нет общего способа сообщения о любых ошибках в любых ситуациях.
Ответ написан
Комментировать
Meliborn
@Meliborn
Системы нотификации вроде notify? Alert, success, info в зависимости от типа ошибки или сообщения.
Ответ написан
Комментировать
@egorinsk
Показываете сообщение рядом с кнопкой, прокручиваете страницу, чтобы оно было видно, предлагаете варианты действий пользователю.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы