битриксе делают? И зачем laravel к нему крепят как прослойку между фронт + бэк на битриксе? В живую просто не встречал ни того, ни другого, но иногда слышу про такие решения.
я делаю модуль битрикса с какими-то рест методами, через них уже общаюсь с фронтом
Да, я это понял. Вопрос был скорее в массы, потому что я слабо понимаю как restful api положить на философию битрикса.
Мне кажется сейчас нет особого смысла прикручивать для создания рест-апи другие фреймворки, ибо у битрикса есть свой роутер, который неплохо с этим справляется. А ещё можно расширять собственный рест битрикса своими методами.
В модуле вообще можно написать свой контроллер, к которому обращаться с фронта через BX.ajax.runAction. Это и работает всё из коробки и в философию битрикса идеально вписывается))
да, я так и делю по сути всё
Это я сильно туплю. Я просто ни разу не делал этого на Битрикс. Это получается в urlrewrite вешается группа роутов api на какой-то файл/компонент и уже собственно делаешь. но остается вопрос с template/json? или вообще отказываться от template в такой случае?
Перед юрлреврайт теперь есть роутеры
Спасибо большое, надо заглянуть, я ещё не видел.
Я делал через htaccess переадресацию - если запрос начинается с domain.ru/api , то отправлял на роутер, а остальное как обычно на urlrewrite Там есть нюанс, что если просто переключишь сайт с urlrewrite на роутер, то все страницы будет роутер обрабатывать. А мне нужно было чтоб роутер обрабатывал только запросы к апи, а остальное как раньше работало. Может есть и другие способы, конечно.
Если ни один роутер не перехватил сигнал, вступает юрлреврайт
Хм. Может я что-то упустил, но раньше было так - роутер нужно включать в settings.php, после этого urlrewrite перестаёт подключаться автоматом, а если ни один роут не подхватил запрос, то выдаёт 404. Я поэтому и начал всю эту канитель с htaccess
Вспомнил об этом хвосте переписки /bitrix/modules/main/include/routing_index.php
Дописал в сообщении
Спасибо, попробую ещё повозиться с роутером потом как-нибудь. То есть сейчас можно в в settings.php указать файл с роутами и роутер будет работать только для путей описанных в этом файле , а остальное останется как есть через urlrewrite?
Ещё одно вспомнил. Роутинг идёт вперёд механизма композитного кеша. У меня получилось запроксировать сигнал через роутинг, то есть сигнал поступает в мой роутер, пропускается через него и дальше идёт по стандартным кишкам. Я пока не нашёл, где применить, но на самом деле это понимание живёт в голове с хештегом вау, потому что до этого ни единой точки, даже минимального события не было, чтобы хоть как-то иметь возможности вклиниться перед композитом.
Обсуждают сегодня