DoctorX
@DoctorX
Веб разработчик

Где должны находится ajax-json контроллеры?

Дано некое стандартное веб-приложение.
Есть обычные страницы на которых используются аякс запросы. Ответ на эти запросы приходит в виде json массива и разбирается на фронтеде. Сами страницы рендерятся стандартными контроллероми. С шаблонизацией и тд. (это не одно-страничное приложение)
Подобных ajax действий довольно много.

В какой контролер логичнее их поместить? Почему?
1. Всегда в контроллер страницы с которой эти действия уходят. Который будет рендерить и обычные html странички и json ответы. Так как эти действия обычно логически довольно тесно связаны со страницей с которой они вызываются.
2. Всегда в отдельный параллельный Json контроллер (PageOneAjaxController) унаследованный от AbstractJsonController где будут свои фишки вроде автоматического преобразования exception в корректный json ответ-ошибку.
2.5 Отдельная иерархия под аякс со своими контроллерами и урлами (ведь это по сути api доступное из фронтенда)
3. Первый или второй вариант исходя из ситуации. (Поясните тогда какой приоритетный и где та грань когда один вариант переходит в другой)
  • Вопрос задан
  • 221 просмотр
Пригласить эксперта
Ответы на вопрос 1
artem_b89
@artem_b89
Сетевой бездельник
В унаследованном проекте делаем так: те запросы, которые имеют общий характер, например получение списка пользователей или подразделений, выносим в некоторый AbstractJsonController, остальное делаем только там, где это нужно.
Но, если бы я делал проект с нуля, выделил бы под каждую сущность отдельный контроллер.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы