HTTP (Клиент)
Этот раздел посвящен библиотеке для работы с протоколом HTTP в 1С:Предприятие, OneScript и CLI. На данной странице описаны все действия, необходимые для полноценного начала работы
Начало работы
Модуль HTTP предназначен для быстрого создания HTTP-запросов в 1С:Предприятие и OneScript при помощи текучего интерфейса. Каждый такой запрос должен начинаться инициализацией HTTP-клиента одним из следующих способов:
HTTPКлиент = OPI_ЗапросыHTTP
.НовыйЗапрос()
.Инициализировать(URL)
HTTPКлиент = Обработки.OPI_HTTPКлиент.Создать().Инициализировать(URL);
HTTPКлиент = Новый OPI_HTTPКлиент;
HTTPКлиент.Инициализировать(URL);
Также клиент может быть инициализирован без указания URL. Подробнее см. в разделе Инициализация
Общий порядок описания запроса
После инициализации клиента, новый запрос может быть описан произвольным количеством дополнительных действий, перечисленных в подразделах данного блока документации
URL = "https://exemple.com/post";
Данные = Новый Структура("Поле1,Поле2,Поле3", 10, "Текст", 20);
Результат = OPI_ЗапросыHTTP.НовыйЗапрос()
.Инициализировать(URL)
.УстановитьJsonТело(Данные)
.ДобавитьЗаголовок("X-My-Header1", "Hello")
.ДобавитьЗаголовок("X-My-Header2", "world")
.ДобавитьAWS4Авторизацию("***", "***", "***")
.ОбработатьЗапрос("POST")
.ВернутьОтветКакJSONКоллекцию();
В общем случае, для выполнения запроса после окончания описания, используется функция ОбработатьЗапрос(Метод, ВыполнятьСразу = Истина)
или эта же функция с признаком ВыполнятьСразу = Ложь
и вызовом функции ВыполнитьЗапрос
отдельно. Для получения конечного ответа после обработки запроса, используется одна из функций раздела Получение ответа, в зависимости от ожидаемого формата тела
Логирование
В процессе работы клиента происходит логирование выполняемых им действий. Для получения лога используется функция ПолучитьЛог
, которая возвращает список записанных действий в виде массива или единой строки (в зависимости от значения параметра Строкой
). Некоторые функции из раздела Получение ответа также могут возвращать строку лога в исключении, при указании параметра ИсключениеПриОшибке
(в противном случае, при ошибке, возвращается объект HTTP-клиента, из которого лог может быть получен вручную)
URL = "https://exemple.com";
СтруктураПараметров = Новый Структура("param1,param2", "text", 10);
HTTPКлиент = OPI_ЗапросыHTTP
.НовыйЗапрос()
.Инициализировать(URL)
.УстановитьПараметрыURL(Ст руктураПараметров)
.ОбработатьЗапрос("GET");
Если Не HTTPКлиент.Ошибка Тогда
Ответ = HTTPКлиент.ВернутьОтветКакJSONКоллекцию();
Иначе
Ответ = HTTPКлиент.ПолучитьЛог();
КонецЕсли;
Ошибка - экспортное поле типа Булево, которое устанавливается в Истина при возникновении критической ошибки в работе клиента