Последовательность запросов для взаимодействия с платформой
Данная страница описывает типичный сценарий общения пользователя с платформой. В данном сценарии насчитывается 5 шагов.
1. Авторизация (Login)
Для начала, чтобы авторизация работала, необходимо выполнить команду
cd src && python main.py
и перейти на <prefix>/instance/login, где доступна кнопка "Sign in with Google". Соответственно, на этой странице можно авторизоваться с помощью Google+.
Настройка авторизации через google
Авторизация через отладочный интерфейс
Отладочная авторизация необходима для тестирования, в ней не производится проверка пользователя.
Отладочная авторизация доступна по следующему запросу: <prefix>/instance/login/debug?_id=debug_user1.
2. Загрузка данных (запрос требует авторизации)
Создание точек/каналов происходит с помощью запроса POST.
- Путь запроса для создания точки: <prefix>/instance/service/<service_name>/point, data:{'lat', 'lon', 'alt', 'json', 'channel_id'}
- Путь запроса для создания канала: <prefix>/instance/service/<service_name>/channel, data:{'name', 'json'}
при этом имя канала должно иметь формат 'name' + String(Math.random() * (1000 - 1) + 1)
3. Фильтрация (запрос требует авторизации)
Фильтрация для точек/каналов происходит с помощью запроса GET.
- Путь запроса для фильтрации точек: <prefix>/instance/service/<service_name>/point
data: {channel_ids, number, geometry, altitude_from, altitude_to, substring, date_from, date_to, offset, radius}
при этом обязательными аргументами запроса являются channel_ids и number. Путь запроса для фильтрации каналов: <prefix>/instance/service/<service_name>/channel/channel_id
data: {substring, number, offset}
аргументы не являются обязательными.
4. Работа с плагинами
Расширение функционала платформы происходит с помощью плагинов. Плагин представляет собой набор внешних классов-ресурсов, подключенных к Geomongo.
С помощью запроса <prefix>/instance/manage_plugins можно управлять плагинами системы (подключать/отключать).
Если плагин включен (enabled), он доступен через REST интерфейс <prefix>/instance/plugin/<plugin_name>/*
5. Logout (запрос требует авторизации)
Чтобы закончить сессию, необходимо вызвать <prefix>/instance/logout.