Взаимодействие с облачными базами по API (json, публикация web и http сервисов)

Оглавление
    Для взаимодействия по API необходимо выполнить подготовку базы данных:
    1. Настроить сквозную авторизацию;
    2. Проверить наличие сервиса в конфигурации и доступ к нему;

    Взаимодействие с базой данных 1С возможно следующими методами:

    1. Взаимодействие посредствам web-сервисов;

    2. Взаимодействие по средствам http-сервисов;

    3. Взаимодействие по средствам стандартного интерфейса ODATA;

    4. Создание анонимной публикации;

    Подготовка базы для взаимодействия по API.

    В рамках облака, публикация баз производится автоматически. В рамках этого процесса, на сервере публикуются web/http-сервисы из конфигурации и расширений по умолчанию, интерфейс OData.

    Настройка сквозной авторизации.

    При обращении к базе данных по API потребуется сквозная авторизация. Для ее обеспечения следует создать в базе пользователя с логином и паролем аналогичными учетным данным для основного или дополнительного пользователей. Также следует дать данному пользователю полные, либо необходимые для взаимодействия права.

    Проверка наличия сервиса в конфигурации.

    По умолчанию будут опубликованы все стандартные web-сервисы конфигурации. В таком режиме публикации к web-сервисам следует обращаться по ALIAS.

    Узнать наименования сервисов, доступных для взаимодействия с данной конфигурацией, можно следующим образом:

    Следует открыть базу данных в режиме конфигуратора, раскрыть раздел «Общие», раскрыть подраздел «Web-сервисы» или «HTTP-сервисы» соответственно, далее найти наименование интересующего сервиса.

    Проверить правильность выполняемых действий можно следующим образом.

    В любой конфигурации есть стандартный WS «EnterpriseDataExchange», к нему можно обратиться следующим образом.

    Открыть подраздел Web-сервисы выбрать «EnterpriseDataExchange», в примере это «EnterpriseDataExchange_1_0_1_1» проверяем во вкладке «Прочее» его ALIAS – «EnterpriseDataExchange_1_0_1_1.1cws».

    Теперь обращаемся к сервису через браузер добавив к ссылке на базу /ws/EnterpriseDataExchange_1_0_1_1.1.1cws?wsdl 

    Пример:

    terminal.scloud.ru/01/sc60889_base03/ws/EnterpriseDataExchange_1_0_1_1.1cws?wsdl

    При запросе логина и пароля следует ввести учетные данные пользователя, которые использовались для настройки сквозной авторизации.

    Если при ответе на запрос получаем xml данные, значит предварительная настройка произведена корректно.

    Взаимодействие посредствам web-сервисов.

    Перед началом обращения к web-сервисам баз данных по API следует предварительно выполнить настройки сквозной авторизации.

    Для взаимодействия с базой данных через web-сервисы (WS). Просмотреть доступные для работы сервисы можно открыв базу в режиме конфигуратора, раскрыть раздел «Общие», раскрыть подраздел «Web-сервисы».

    Как говорилось ранее, все WS по умолчанию уже опубликованы, к ним следует обращаться по alias, синтаксис можно посмотреть в конфигураторе через свойства конкретного сервиса, раздел «Прочее».

    В запросе расширение «.1cws» меняем на «?wsdl»

    ws/EquipmentService?wsdl

    При запросе логина и пароля следует ввести учетные данные пользователя, которые использовались для настройки сквозной авторизации.

    Взаимодействие по средствам http-сервисов.

    Перед началом обращения к http-сервисам баз данных по API следует предварительно выполнить настройку сквозной авторизации (описаны выше).

    Для взаимодействия с базой данных по средствам http-сервисов (http-Services). Просмотреть доступные для работы сервисы можно открыв базу в режиме конфигуратора, раскрыть раздел «Общие», раскрыть подраздел «HTTP-сервисы».

    Доступ можно проверить, сделав соответствующий запрос через браузер, запрос должен иметь следующую форму:

    …/hs/имя_http_сервиса/имя_метода/запрос

    Пример:

    https://terminal.scloud.ru/01/login_base01/hs/имя_http_сервиса/имя_метода/запрос (при наличии)

    Правильный синтаксис метода и запроса следует уточнять у разработчика каждого конкретного http-сервиса.

    Также необходимо учитывать тот факт, что для работы некоторых сервисов (например, для телефонии) необходима анонимная аутентификация, в рамках сервиса её допускается включать только для баз, работающих на SQL.

    Взаимодействие по средствам стандартного интерфейса ODATA

    Перед началом обращения к интерфейсу ODATA следует предварительно выполнить настройку сквозной авторизации (описано выше). Можно будет проверить обращение к базе через стандартный интерфейс, в формате json, пример:

    https://terminal.scloud.ru/01/login_base01/odata/standard.odata/


    Odata работает.
    Теперь нужно обратиться к объекту к базе, сделаем на примере справочника Контрагенты:

    https://terminal.scloud.ru/01/login_base01/odata/standard.odata/Catalog_Контрагенты

    Ответ получен, но сообщение «сущность не найдена», говорит нам о том, что в базе не настроены параметры ODATA.

    Следует войти в режим «Предприятие», открыть «Все функции» - «Обработки» и найти «Настройка стандартного интерфейса OData (Обработки)».

    Во вкладке «Состав» следует выбрать нужные для отображения данные и сохранить изменения.

    Теперь при выполнении запроса

    https://terminal.scloud.ru/01/login_base01/odata/standard.odata/Catalog_Контрагенты

    Мы получаем ответ:

    Запрос отработан корректно.


    Получение ссылки на анонимную публикацию.

    Анонимная публикация нужна для настройки интеграции базы 1С c внешними источниками данных (например, маркетплейсы, телефония).

    Для её создания в личном кабинете в разделе «Базы 1С» имеется кнопка «Получить анонимную публикацию»

    Далее откроется «Мастер создания анонимной публикации», в котором необходимо заполнить обязательные поля логина и пароля от облака, наименование сервиса (alias) и выбрать тип сервиса, который будет использоваться. После заполнения всех данных станет активной кнопка «Создать ссылку»

    Далее у Вас появится окно с итоговой ссылкой, которую можно будет скопировать по кнопке справа

    Анонимная публикация создана и её можно использовать в нужном Вам сервисе.


    (Рейтинг: 5 ,  Голосов: 1 )
    Поделиться
    картинка
    Хотите попробовать 1С в облаке?
    Регистрируйтесь и начните работу уже сейчас!

    Материалы по теме

    1732192828