0

Товар успешно добавлен в корзину

Оформить заказ

Опубликована техническая документация по разработке внешних API и уведомлений

Так как модуль “внешнее API” может активно использоваться при разработке любых интеграций с внешними системами сторонними специалистами, документация по данной теме являлась для нас приоритетной задачей. Сегодня мы опубликовали обширный материал с примерами кода в нашей документации. В данной статье, я хотел бы рассказать о самых «сливках» архитектуры нового модуля и его возможностях для разработчиков. Итак, начнем.

Документация по внешним API

Автодокументирование

Модуль “Внешнее API” использует PHP Reflection для определения параметров метода, а также автоматического создания справочного раздела на вашем сайте по внешнему API. Забудьте о том, что нужно вести где-то отдельно документацию к API, теперь достаточно просто оформлять качественно PHP код.

Пример кода:

Пример сгенерированной документации:
 

Множество базовых классов

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

При реализации вашего метода API просто подберите наиболее подходящего вам родителя, а затем уточните, при необходимости, с помощью механизмов ООП поведение. Это позволит сократить ваш код. Подробности в документации.

Удобная подготовка ORM объектов к выдаче в API

Большинство задач API сводится к выводу одного ORM объекта или целого списка. Как сделать так, чтобы лишние непубличные поля не попадали в экспорт? Ответ прост, просто пометьте те поля, которые не нужно показывать отдельным флагом прямо в ORM объектах.

Добавлено понятие «Внешнее приложение» в ReadyScript

В ядре ReadyScript появилось новое понятие – «Внешнее приложение», это класс который должен описывать всю деятельность и разрешения удаленного приложения. Класс приложения может имплементировать интерфейсы различных модулей, чтобы наращивать поведение. Под поведением понимается: работа с внешним API(интерфейс interfaceHasApi), работа с Push уведомлениями(интерфейс interfaceHasPush, скоро будет опубликован), и т.д.

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

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

Готовая авторизация

Мы реализовали простейший способ удаленной авторизации по отдельной части протокола oauth 2.0. Данный способ авторизации позволяет получать авторизационный токен на продолжительный срок для работы с ним на мобильных и иных приложениях.

Готовая система разграничения прав

Вы можете создавать как гостевые методы API(не требующие авторизации), так и приватные. В приватных методах, вы можете реализовать любую логику проверки прав, так как из авторизационного токена можно получить абсолютно все сведения, касающиеся приложения, пользователя, чтобы сформировать нужный набор прав.

Документация по подсистеме уведомлений ReadyScript

ReadyScript предлагает готовую подсистему уведомлений для Email, SMS и Desktop приложения. Пользователь сможет управлять уведомлением для каждого канала через административную панель, в том числе переназначать шаблон самого уведомления.

Разработчику не требуется вникать в детали доставки уведомлений, достаточно просто создать и отправить абстрактное уведомление, далее система сделает все сама.

Подробное руководство опубликовано в данном разделе.


24 ноября 2016 17:59, Артем Полторанин
Рассказать друзьям: