Может ли Ajax получить доступ к неконтроллерным методам? - PullRequest
0 голосов
/ 20 сентября 2019

У меня есть класс, который содержит много вспомогательных функций, которые облегчают выполнение многих задач для моего веб-приложения.Я пытался использовать Ajax и получить доступ к этому классу, но это не сработало.Я пытаюсь что-то невозможное?Может ли Ajax иметь только контроллеры доступа?

1 Ответ

0 голосов
/ 20 сентября 2019

Краткий ответ.Да, вы можете сделать вызовы ajax в класс вне контроллеров через пользовательские маршруты в классе RouteConfig в методе RegisterRoutes.Установка определенных маршрутов (скажем, для ваших вспомогательных функций) игнорируется обработчиками и позволяет пропускать трафик.

Самый правильный ответ для вашей ситуации.Ты не должен.Любая простота использования вспомогательных функций будет быстро уменьшена из-за работы, которую вам придется выполнять, потому что теперь вы несете ответственность за управление всеми http-протоколами, входящими и выходящими из ваших вспомогательных классов, для связи от клиента к серверу и обратно.

... и ваши коллеги (или кто-либо, унаследовавший ваш код) в конечном итоге будут ненавидеть вас за нарушение соглашения без реальной необходимости делать это.

Вместо того, чтобы заново изобретать колесо, просто настройте контроллер Helper в своем проекте и возложите на него ответственность за отправку http-запросов назад и вперед и упаковывание ваших вспомогательных функций.Это может быть простой контроллер, который не возвращает никаких результатов действий, и вам не нужно создавать представления, он может просто отвечать за возвращение Json без каких-либо дополнительных сборок.Это не нарушит общепринятых норм, вы сможете потратить годы знаний и знаний на http handeling И ваши коллеги-разработчики не захотят убивать вас во сне, потому что вы сделали что-то только потому, что могли.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...