Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Скажите, пожалуйста, как лучше всего указывать роуты для ajax-запросов в js-скриптах?
Нашел такие пакеты как:
— https://github.com/aaronlord/laroute
— https://github.com/tightenco/ziggy
где благодаря им в js файлах можно указывать роуты по их имени
т.е.
var post = {id: 1, title: 'Ziggy Stardust'};
return axios.get(route('posts.show', post))
.then((response) => {
return response.data;
});
Но здесь меня смущает момент что используя этот подход у нас становятся доступны и видны все роуты и их пути в отдельно генерируемом js-файле, которые потом можно легко считать постороннему пользователю.
Какой правильный способ, что-бы указывать роуты:
— использовать такие пакеты, или
— просто указывать все роуты в js-script файле вручную — «users/1/update», но тогда поменяв путь у каких-то с роутов, нужно бегать по всех js файлах и переимонывать и там также
— или, например, если ajax событие висит на какой-то кнопке то прописывать роут в аттрибуте href а в js уже считывать этот аттрибут и передавать в ajax-метод?
PHP<button href="route('users.update')">Обновить</button>
Но здесь все равно могут быть, например, также моменты, когда эта же кнопка генерируется через js и все равно тогда нужно указывать получается путь вручную. Или есть что-то наподобии
<ul id="locations">
<li><a>Россия</a></li>
<li><a>Украина</a></li>
<li><a>Америка</a></li>
</ul>
То здесь тогда указывать роут в каком-то общем родительскем элементе, например, в теге ul?
Изменено PeterKravets (18.12.2017 12:02:12)
Не в сети
видны все роуты и их пути в отдельно генерируемом js-файле, которые потом можно легко считать постороннему пользователю
Почему это проблема?
— использовать такие пакеты, или
— просто указывать все роуты в js-script файле вручную — «users/1/update», но тогда поменяв путь у каких-то с роутов, нужно бегать по всех js файлах и переимонывать и там также
Использовать пакеты или свой код.
Не в сети
Не в сети