Примеры HTTP сервера
Пример №1: Получение версии SberMobile Server
Этот пример показывает, как получить версию SberMobile Server, используя HTTP запрос.
- Найдите узел Драйверы/Плагины в Системном дереве и дважды кликните мышью на плагин HTTP сервера .
- Добавьте новую запись в Таблицу настроек HTTP сервера.
- Введите versionв поле URI.
- Введите set(dt(), "responseBody", 0, {:status$version})в поле выражение.
- Выберите пользователя для вычисления выражения. Например: users.admin.
- Перейдите на http://localhost:8080/version
Если все сделано правильно, получившаяся страница покажет версию SberMobile Server.
Пример №2: Получение информации о статусе SberMobile Server
Для обработки запросов с параметрами и для других сложных случаев, где одного выражения недостаточно, лучше использовать модели и их наборы правил. Использование переменных среды для хранения промежуточных результатов значительно упростит обработку запросов.
Этот пример показывает, как получить любую информацию из таблицы статусов SberMobile Server.
- Найдите узел Драйверы/Плагины в Системном дереве и дважды кликните мышью на плагин HTTP сервера.
- Добавьте новую запись в Таблицу настроек HTTP сервера.
- Введите reqв поле URI.
- Введите {users.admin.models.model:request(dt())}в поле выражение.
- Выберите пользователя для вычисления выражения. Например: users.admin.
Второй шаг включает создание модели и настройка ее набора правил.
- Создайте новую модель с именем "model".
- Выберите вкладку Наборы Правил.
- Добавьте новый набор правил с именем "request".
- Добавьте к этому набору следующие правила:
| Цель | Выражение | Условие | Комментарий | 
| parameterValues | cell({requestParameters}, "values") | ||
| value | cell({env/parameterValues},"value") | ||
| result | cell({:status} ,{env/value}) | ||
| Final Rule Set Result | set(dt(), "responseBody", 0, {env/result}) | 
Сохраните изменения. Теперь вы можете попробовать следующие запросы:
- http://localhost:8080/req?parameter=version
- http://localhost:8080/req?parameter=name
- http://localhost:8080/req?parameter=uptime
В этих запросах значение параметра может быть именем любого поля таблицы статусов.