Top.Mail.Ru
Заказать консультацию
специалиста 1С
Отправить заявку

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

HTTP-сервис и HTTP-запрос

Власова Ирина Посмотреть все статьи >> Специалист по внедрению 1С франчайзинговой сети "ИнфоСофт".
30.08.2022
5543
Время прочтения - 3 мин.
Заказать консультацию

Одним из распространенных способов взаимодействия приложений в Интернете является использование веб-сервисов. Приложение-поставщик публикует свой веб-сервис по уникальному адресу в Интернете, а другие приложения – потребители могут обратиться к этому веб-сервису для того, чтобы получить какие-то данные от поставщика, передать ему какие-то данные или заставить выполнить какие-то действия.

В платформе 1С присутствует возможность создания произвольных веб-сервисов – HTTP и WEB-сервисов.

HTTP-сервисы основаны на архитектуре REST. Они пользуются большой популярностью благодаря простоте программирования клиента таких сервисов, меньшему объему передаваемых данных и меньшей вычислительной нагрузке. Данные сервисы являются ресурсно-ориентированными (направленными на получение информации), в них отсутствует проверка типов, входящих и исходящих данных, и чаще всего для обмена сообщениями используется формат JSON.

Web-сервисы работают по протоколу SOAP. Данный протокол используется для обмена произвольными сообщениями преимущественно в формате XML, а также для вызова процедур. В нем присутствует проверка входящих и исходящих данных, типов этих данных. В отличие от HTTP-сервисов, Web-сервисы – сервисно-ориентированная технология, позволяющая удаленно вызывать описываемые процедуры.

В данной статье мы рассмотрим HTTP-сервисы. Для этого в платформе 1С существует объект конфигурации HTTP-сервис.

1.png

В HTTP-сервисах любая информация, которая может быть получена при обращении к сервису, называется ресурсами. У ресурсов есть уникальный идентификатор – URL, обращение к которому приводит к какому-либо действию. Эти обращения выполняются с помощью запросов, которые в протоколе HTTP называются методами.

Для обращения к HTTP-сервису формируется URL, который в общем виде выглядит следующим образом:

http://<АдресСервера> /<ИмяПриПубликации> /hs/<КорневойURL>/<ОтносительныйURL>.

Рассмотрим его формирование более подробно.

<АдресСервера> – адрес сервера, на котором располагается база.

<ИмяПриПубликации> - имя, указанное при публикации на веб-сервере.

hs – признак того, что выполняется обращение к HTTP-сервису.

<КорневойURL> – имя ресурса, определяющее группу ресурсов, связанных общим смыслом. Оно задается в свойстве КорневойURL объекта HTTP-сервис.

2.png

<ОтносительныйURL> – определяет ресурс, к которому будет выполняться обращение. Задается в свойстве Шаблон объекта ШаблонURL, подчиненного объекту HTTP-сервис.

3.png

4.png

Подпишитесь на дайджест!
Подпишитесь на дайджест, и получайте ежемесячно подборку полезных статей.

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

В шаблоне перечисляются сегменты – части URL, разделенные символом «/». Сегменты бывают непараметризованные, и они должны переноситься в URL дословно (сегмент product), и параметризованные. Параметризованные сегменты указываются в фигурных скобках «{» и «}» (сегмент {Код}), и фактически описывают переменную с указанным именем, к которой можно получить доступ из встроенного языка. В одном шаблоне имена параметризованных сегментов должны быть уникальными. Имя параметризованного сегмента может состоять только из букв, цифр и символа «_».

Символ «*» может находиться только в конце шаблона. На его месте может находиться любое количество сегментов, включая отсутствие сегмента.

Для шаблонов необходимо определить HTTP-методы, которые могут быть использованы при работе с ресурсом, совпадающим с шаблоном. Для этого необходимо создать нужное количество объектов Метод, подчиненных объекту Шаблон URL. Данные методы рекомендуется называть именем обслуживаемого метода на английском языке.

5.png

Для методов необходимо создать обработчик, которым будет обрабатываться полученный HTTP-запрос. Обработчиком является функция, которая в параметрах получает сам запрос, являющийся объектом типа HTTPСервисЗапрос, и возвращает ответ, представленный объектом типа HTTPСервисОтвет.

6.png

Пример обработчика для метода GET шаблона Номенклатура:

7.png

В данной статье мы рассмотрели популярный веб-сервис платформы 1С - HTTP-сервис, процесс его создания и работу с ним из контекста 1С.


Заказать консультацию специалиста 1С
Оставьте заявку и наши эксперты проконсультируют вас по данной статье.
Отправить заявку

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

Рассказать друзьям
Для разработчиков 1С
Вам может быть интересно: