ASP .NET роутинг в JavaScript
3К открытий3К показов
Наш читатель поделился с нами удобным способом обработки запросов на JavaScript в ASP .NET.
Я — студент 2-го курса, в свободное от учебы время пилю для себя небольшой сайтик на ASP .NET. И в какой-то момент, при написании очередной формы, которая отправляет данные при помощи AJAX, я поймал себя на мысли, что мне надоело снова и снова указывать URL для отправки запроса, и было бы неплохо подключить к JavaScript’y роутинг, который есть у меня на backend’е.
Выбор способа реализации
Немного подумав и спросив на StackOverflow (и не получив ответа), я пришел к выводу, что у меня есть два простых пути реализации этого:
- через URL вида route/{routename} c последующим редиректом;
- через реплейсмент-тег вида «[Route:%route_name%]», который при отдаче файла будет заменяться на URL cамого роута.
Первый вариант практически сразу был отброшен как слишком скучный, и я приступил к реализации задуманной функциональности.
Реализация
Немного почитав про то, как ASP .NET обрабатывает реквесты, я решил, что мне следует написать кастомный HttpHandler, который будет по регулярному выражению искать в файлах *.js строку вида «[Route:%route_name%]» и заменять ее на искомый URL.
Итоговый код:
После регистрации этого хэндлера в web.config’e все заработало, как нужно.
Файл, который был запрошен:
Файл, который был получен:
Надеюсь, кому-либо сможет помочь данный очерк. Спасибо за внимание!
3К открытий3К показов