Я пытаюсь стандартизировать то, как я обрабатываю исключения в своем веб-приложении (домашняя структура), но я не уверен в правильном способе обработки различных ситуаций. Мне интересно, есть ли наилучшая практика из UI/удобной для пользователя точки зрения.Исключения: перенаправление или рендеринг?
Пользователь регистрируется в приложении и открывает две вкладки, показывающие один и тот же экран. На одной вкладке они выдает команду delete на объекте
FOO
. Затем, на другой вкладке, затем щелкните команду редактирования наFOO
(которая больше не существует); например запрос GET дляeditObject.php?object_id=FOO
. Что делать, если они выдают запрос на редактирование этого несуществующего объекта?-В данный момент я перенаправляю эти «отсутствующие» объекты на предыдущую страницу с сообщением об ошибке, например «объект не существует».
Пользователь выдает запрос GET для поиска объектов с
color=Red
, например.searchObjects.php?color=Red
. Запрос, возвращающий эти результаты, взорвался, потому что кто-то сбросил таблицу ОБЪЕКТОВ. Это неожиданное исключение и не совсем такое, как 1).-Currently Я перенаправление
errorPage.php
с сообщением «Неожиданная ошибкой»В общем, что я должен делать, если GET/POST параметров, которые должны быть там вместо таинственно пропали без вести. Может, кто-то пытается что-то привнести?
-Currently Я подхожу это так же, как 2)
Что я должен делать в каждом из указанных выше 3-й случаев?
- визуализации «Объект не существует» вид на URL
editObject.php?object_id=FOO
- Перенаправить на контроллер, который отображает вид ошибки:
header('Location: errorPage.php')
- Подавать 404: не уверен, что синтаксис для этого в PHP/Apache
- Другое