@undefined_user
null

Какая обычная простейшая архитектура php-бэкенда для SPA?

Изучаю тему проектирования бд.

Допустим есть некое обычное клиентское приложение которое использует на бекенде обычную базу данных.
Понимаю что обычно на сервере и на клиенте приложения делают используя фреймворки, но речь не о них.

Помогите пожалуйста понять суть того как обычно одностраничное приложение общается с бд.
Я хочу попробовать написать велосипед учебный на эту тему, хочу понять как это обычно работает, в смысле какой нужен базовый минимальный функционал серверного api достаточный для большого спектра возможных приложений. Сервер на php.

Пока понимаю что есть три основных типа данных -
- документы (готовые страницы для просмотра)
- JSON
- медиафайлы

Также понимаю что эти данные можно хранить в различных моделях: сетевая иерархическая реляционная многомерная обьектная
И еще понимаю что надо разделять права для участников и владельца.
  • Вопрос задан
  • 570 просмотров
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега Веб-разработка
{PHP, MySql, HTML, JS, CSS} developer
90% данных в спа предающихся с бэка на фронт в жсон. Запросы к бэку уходят по достаточно стандартным роутам а ля CRUD ну и + типа названия объекта: user, item, file, точнее наоборот: user/edit, image/add или что-то типа такого.
На бэке обычно тоже достаточно простые готовые методы CRUD, + специфические на всякие админки и свистохотелки. Обычно создается объект запрошенного типа, с ним производятся операции, на фронт выдается результат в жсоне. Ничего магического.

Также понимаю что эти данные можно хранить в различных моделях: сетевая иерархическая реляционная многомерная обьектная
В целом это ничего не меняет для архитектуры в комплексе - запрос с фронта - создали объект - отработали действие прописанное в запросе - отдали результат на фронт.

И еще понимаю что надо разделять права для участников и владельца.
RBAC или ACL, пока больше ничего толкового не придумали.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы