Кнопка отправки HTTP-запросов
3 минутное чтение
«Кнопка» является модификацией элемента «Панель с закладками».
- Позволяет отправлять http-запросы.
- Поддерживает методы:
POST
;GET
;PUT
;PATCH
;DELETE
.
- Предусмотрена возможность использовать значения фильтров в качестве параметров запроса.
- Предусмотрена кнопка подтверждения отправки запроса с возможностью отправки текстового комментария.
Выбор и настройка элемента «Кнопка»
Чтобы создать «Кнопку» в отчете, нужно:
- зайти в отчет на аналитическом портале;
- перейти в режим конструктора (см. рисунок ниже, 1);
- зайти в меню настройки элемента (см. рисунок ниже, 2);
- в открывшемся окне настройки элемента выбрать тип отображения — «Панель закладок» (см. рисунок ниже, 3);
- перейти во вкладку действие кнопки (см. рисунок ниже, 4)
- выбрать из выпадающего списка Отправка запроса (см. рисунок ниже, 5);
- выбрать тип запроса (см. рисунок ниже, 6);
- включить флаг «подтверждение при отправке» (см. рисунок ниже, 7);
- добавить URL (см. рисунок ниже, 8);
- заголовки запроса (см. рисунок ниже, 9);
- тело запроса (см. рисунок ниже, 10);
- нажать кнопку «Сохранить» (см. рисунок ниже, 11) для сохранения настроек:
Детальная настройка кнопки
В действие кнопки имеются поля, которые необходимо настроить для корректной работы «кнопки»:
- «Тип запроса» — позволяет выбрать метод запроса из выпадающего списка;
- «URL запроса» — строка адреса, куда отправляется запрос;
- «Заголовки запроса» — позволяют клиенту и серверу отправлять дополнительную информацию;
- «Тело запроса» — непосредственно данные запроса.
Тип запроса:
POST
;GET
;PUT
;PATCH
;DELETE
.
URL запроса
В данную область вводится URL для взаимодействия с API:
Пример URL: https://api.telegram.org/bot{token}/{method}
.
Заголовки запроса
В данную область, вводятся дополнительные параметры запроса
Пример заголовков:
[
{
"key":"Content-Type",
"val":"application/json; charset=utf-8"
},
{
"key":"Accept-Encoding",
"val":"identity"
}
]
Тело запроса
Данный блок заполняется данными, которые необходимо отправить в запросе
Пример тела запроса:
{
"startDate": "2020-12-31",
"endDate": "2023-01-14",
"comment" : "Комментарий"
}
Значения фильтров в качестве параметров запроса
Разработан механизм, позволяющий использовать значения фильтров в качестве параметров запроса. Необходимо сформировать ссылку на фильтр, путем написания наименования фильтра в двойных фигурных скобках {{Фильтр.Наименование Фильтра}}
- Если изменяемый параметр должен быть в строке URL, непосредственно в строке URL необходимо добавить ссылку на фильтр:
https://api.telegram.org/bot{{Фильтр.Наименование Фильтра 1}}/{{Фильтр.Наименование Фильтра 2}}
- Если изменяемый параметр должен быть в заголовках или теле запроса, к ключу добавляется ссылка на фильтр:
{
"val_1": "{{Фильтр.Округ}}",
"val_2": "{{Фильтр.Дата}}"
}
- Если значение параметра даты требует форматирования, необходимо использовать маску даты, для этого после ссылки на фильтр добавляется символ
>>
, затем в квадратных скобках вводится формат даты.
Подробнее о форматах даты: https://learn.microsoft.com/ru-ru/dotnet/standard/base-types/custom-date-and-time-format-strings.
Пример:
"val_3": "{{Фильтр.Дата>>[DD.MM.YYYY]}}"
"val_4": "{{Фильтр.Дата>>[YYYY-MM-DD]}}"
"val_5": "{{Фильтр.Дата>>[DD.MM.YYYY HH:mm:ss]}}"
- Если значение параметра даты является периодом, т.е в фильтре используются даты начала и конца этого периода, необходимо использовать дополнительные обозначения к наименованию фильтра. Через точку добавляется признак
Начало
илиОкончание
периода, которые соответствуют значениям фильтра.
Пример:
"val_6": "{{Фильтр.Дата.Начало}}"
"val_7": "{{Фильтр.Дата.Окончание]}}"
Подтверждение отправки запроса
Для предотвращения случайных нажатий, реализован механизм подтверждения отправки запроса, который активируется одноименным флагом.
Так же предусмотрена возможность включить опцию Комментарий
, который может быть интегрирован в тело запроса, путем добавления ссылки на это поле {{comment}}
.
Пример:
"val_6": "{{Фильтр.Дата.Начало}}"
"val_7": "{{Фильтр.Дата.Окончание]}}"
"val_8": "{{comment}}"
Пример использования связки Аналитический портал — Modus ETL
Для интеграции аналитического портала и Modus ETL в последнем должны быть произведены настройки позволяющие принимать HTTP-запросы (ссылка на статью TO BE).
В Modus ETL необходимо добавить учетную запись с правами администратора, которая позволит производить запуск составов выгрузки, сценариев и пакетов непосредственно из аналитического портала.
В URL для отправки запросов необходимо добавить учетные данные ETL, затем через @
адрес сервера, где развернут ETL, далее по шаблону указанному в инструкции (ссылка на статью TO BE):
http://[login]:[password]@[Адрес публикации]/hs/object/run
Заголовки и тело запроса заполняются согласно инструкции (ссылка на статью TO BE).