Modx restfull api
Доброго времени дня!
Начал изучать vue.js и встал вопрос как сдружить vue с modx?
Есть ли готовое решение для реализации рест апи?
Начал изучать vue.js и встал вопрос как сдружить vue с modx?
Есть ли готовое решение для реализации рест апи?
Комментарии: 19
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Легче modx оставить как админку, а остальное развернуть на express, sequelize, nuxt.js — чем думать об api modx…
В телеграм канале скидывали решение с помощью подключения slim фреймворка. Но ой как не хочется городить костыли.
Я пришел к выводу, что легче modx использовать как админку, а с помощью sequelize подключаться к базе и передавать нужные запросы и выводить все с помощью nuxt.js
т.е. по сути вы придете к отказу от modx и допилите себе админку и переделаете бд)
но я оговорюсь, что modx мне нравится (с него все началось).
Как раз пошарил на гитхабе, заготовку нашел под связку nuxt + sequelize
github.com/yogesum/vue-express-sequelize-base
А дальше vuejs (nuxtjs) работает с базой через sequelize.
А админка modx используется для администрирования и по сути никакой контент не генерирует
Если вас интересует как стартануть в full stack, то у меня был такой процесс:
— изучаем js. 3-е издание \ Этан Браун
— секреты JavaScript ниндзя. Второе издание
— js подробное руководство. 6-е издание
— веб-разработка с применение node и express \ Итан Браун
— React и Redux. Функциональная веб-разработка
Этого будет достаточно что бы понять как все устроенно и плавать дальше самому, используя документации.
Для интеграции vue в modx вовсе необязательно следовать REST.
В ларавеле допустим апи достаточно просто делается. В модиксе даже схему работы не представляю, отдать данные мы можем в json (хоть через обычные ресурсы — снепеттом). А вот как реализовать обновление и создание? Возможно тоже просто, но глубоко я не копал
1) dev сервер. Среда разработки веб-приложения на vue.js собираемая вебпаком. В алиас конфигов дева и прода кидаем два разных пути. dev и prod. Запросы по api осуществляются через import config from 'config'.
axios.get(config.index.get)…
2) пишем в этот конфиг все url для ajax-запросов.
3) создаём папку на сервере со скриптами, в роли обработчиков запросов. Указываем в modx о том что это статичные сниппеты и возвращаем данные в json. На место чанка писать в json никто не запрещает
Что нужно сделать, пошагово:
Создаем index файл для обработки запросов
Создаем контроллер: пример файла контроллера для получения способов оплаты из minishop
В конфиге nginx прописываем вот так:
Обащение происходит
Вернет массив данных в json формате
Код выше выдернуть из рабочего проект, кое где кое что убрал, так что с первого раза может не запустить.
Дальше уже включаем фантазию и разбираемся с классом rest.modRestService
И тут вот чтобы не ошибатся
yadi.sk/i/MyAlG1dNdIEOWQ
MyController — это название основного префикса? и прописывается он в rest/index.php
То есть если у вас контроллер называется вот так resource то класс для него будет
Кстати контроллер работает имено в связке vue с modx