dllweb
@dllweb

Как установить слушателя на все запросы symfony2?

Такая задача, есть сайт мобильный и основной, вопрос в том как организовать слушателя на всех экшенах или запросах к основному сайту, допустим мы первый раз зашли с мобильного устройства на основную версию сайта, нас редиректнуло на мобильную версию, но мы так же должны иметь возможность перейти снова в основную, то есть, к примеру подать гет запрос на основную версию сайта формой full.ru/?mobile=off

и поставить кукис в браузер мобильного устройства, что бы опять же не выбросить в мобильную версию. Естественно нужно проверять на наличие этого кукиса и его, допустим, значение...

Организовывать такую проверку в самом файле app.php как то не грамотно и наверное грубо (не по феншуй).

Может быть это можно как то сделать через сервис перехватывая событие, я пока ещё плохо разбираюсь во всех потрошках symfony2

Что думаете?
  • Вопрос задан
  • 2241 просмотр
Пригласить эксперта
Ответы на вопрос 1
prototype_denis
@prototype_denis
Symfony
https://symfony.com/doc/current/event_dispatcher/b...

https://symfony.com/doc/current/event_dispatcher.h...

Слушатель на kernel.request
В нём пишите в сессию флаг "мобильности"

Установку кук, если она нужна, то на kernel.response
Достаёте из сесси флаг и добавляете к Response
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы