Разработка программного интерфейса (RESTful API)

Задача:

Необходимо разработать интерфейс программирования приложений – API (Application Programming Interface), который будет являться «посредником» между источником данных — внутренней системой управления клиентами и тарифными планами и потребителями данных — внешними приложениями.

Внешними потребителями данных могут являться сайт самообслуживания, мобильное приложение для Android/iOS/Windows Phone и любые другие возможные приложения.

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

Решение:

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

В основе данного API использована концепция архитектуры программного обеспечения REST (Representational State Transfer — «передача состояния представления»), т. е. метод взаимодействия компонентов распределённого приложения в сети Интернет, при котором вызов удаленной процедуры представляет собой обычный HTTP-запрос (обычно GET или POST; такой запрос называют REST-запрос), а необходимые данные передаются в качестве параметров запроса. Этот способ является альтернативой более сложным методам, таким как SOAP, CORBA и RPC.

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

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

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

Для выполнения запросов к серверу в зависимости от логики используются GET/POST/PUT запросы. Ответы сервера представлены в виде стандартизированного формата JSON. Кроме того, для дополнительного удобства каждый ответ сервера снабжен одним из стандартных кодов состояния HTTP («HTTP status code»), по которому приложение может определить, насколько успешно был выполнен тот или иной запрос.

В качестве программной основы интерфейса был выбран PHP фреймворк Slim, который позволяет быстро создавать мощные веб-приложения и API. Созданный нашими специалистами программный код создан в полном соответствии с принципами объектно-ориентированного программирования, четко задокументирован, имеет логичную структуру и позволяет легко наращивать возможности API при его дальнейшем развитии.

Разработка программного интерфейса (RESTful API)
Документация API
Разработка программного интерфейса (RESTful API)
Slim Framework

Запросить смету

Связаться с нами

Пишите нам

info@bdcolors.com

Приходите к нам

Ул. Бривибас 137-310, Рига, Латвия

Получить ответ

Свяжитесь с нами через веб-форму

Звоните нам

Телефон

(+371) 67 551 357 - Латвия (Рига)

Онлайн-чат

Партнерская программа

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

Стать нашим партнером

Ул. Бривибас 137-310, Рига, Латвия

info@bdcolors.com