Задать вопрос
nepster-web
@nepster-web

Удобно ли будет организовать PHP клиент для RestFull API (SPA)?

Читал про это дело в частности про вопрос SPA application, авторизация и что рендерить backend'y?

Для себя вообще определил несколько минусов при подходе чистый js + rest full:
- теряем возможность работы с куки и сессиями
- не очень удобно и не привычно работать с JS MVC
- сео оптимизация.
- везде нужно тягать токен туда сюда

Собственно есть мысли в такую сторону:
- RESTFULL api server (отдельный проект)
- и к нему можем написать клиент на любом php фраэмворке в классическом виде. Разница в том, что вся логика в апи, а модели из себя представляют только запрос-ответ к рест апи.
Получается нет никаких проблем.

Собственно у кого есть опыт в этом деле, разъясните пожалуйста что к чему. Гайды не интересны, интересен именно ваш практический опыт.
  • Вопрос задан
  • 1342 просмотра
Подписаться 3 Оценить 3 комментария
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
теряем возможность работы с куки и сессиями

Ну не совсем, с куками вы все так же можете работать и через куки хранить сессии, другое дело что это в 99% не нужно. А токены - JWT решает все проблемы.

не очень удобно и не привычно работать с JS MVC

Привыкните, учитывая то что JS MVC это то, чем должно быть MVC.

сео оптимизация

Тут есть варианты:
- гугловский краулер поддерживает JS нынче, на счет остальные не вкурсе.
- генерация снапшетов (phantomjs например) и Ajax crawling
- server-side рендринг, актуально при втором пункте.

везде нужно тягать токен туда сюда

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

и к нему можем написать клиент на любом php фраэмворке в классическом виде

Почитайте про гексагональную архитектуру, например. HTTP API и классический WEB UI это лишь два интерфейса к одной и той же логике, которая инкапсулирована в сервисы. Разница лишь в том, как DTO из сервисного слоя будет юзаться для формирования представления (будь то json или html).

https://www.youtube.com/watch?v=ajhqScWECMo - вот вам посмотреть на досуге.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
11 дек. 2024, в 22:30
250000 руб./за проект
11 дек. 2024, в 22:15
10000 руб./за проект
11 дек. 2024, в 22:10
3000 руб./за проект