Пример пакетов: различия между версиями
Shihov (обсуждение | вклад) Нет описания правки |
Shihov (обсуждение | вклад) Нет описания правки |
||
(не показано 6 промежуточных версий этого же участника) | |||
Строка 8: | Строка 8: | ||
* Заголовки HTTP запроса: | * Заголовки HTTP запроса: | ||
* Authorization: Basic - логин и пароль на уровне базовой авторизации | * Authorization: Basic - логин и пароль на уровне базовой авторизации | ||
* SOAPAction: http://88.99.106.214/Mercury#DataExchangeGatewayV2: | * SOAPAction: http://88.99.106.214/Mercury#DataExchangeGatewayV2:'''КомандаЗапроса''' | ||
'КомандаЗапроса | |||
===== Пример использования ===== | ===== Пример использования ===== | ||
Наглядный пример XML запросов и ответов можно [[File:gate-samples.zip]], а так же [[File:реализация.request.txt]] и [[File:производство.request.txt]].<br/>Например, для отправки запросов через HTTP может использоваться утилита | Наглядный пример XML запросов и ответов можно [[File:gate-samples.zip]], а так же [[File:реализация.request.txt]] и [[File:производство.request.txt]].<br/>Например, для отправки запросов через HTTP может использоваться утилита [https://bintray.com/artifact/download/vszakats/generic/curl-7.57.0-win32-mingw.7z curl32] [[File:curl-7.40.0-win64.msi.7z]].<br/>Так, допустим мы хотим создать номенклатуру в АСП.Шлюз/ | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| | | | ||
| 1. База называется "gloria_test" | | 1. База называется "gloria_test" | ||
| Имя, указанное при [[ | | Имя, указанное при [[5_асп.шлюз:1_интеграция:4_публикация_конфигурации|публикации базы АСП.Шлюз на веб сервере]] | ||
| | | | ||
|- | |- | ||
Строка 50: | Строка 48: | ||
<?xml version='1.0' encoding='utf-8'?> | <?xml version='1.0' encoding='utf-8'?> | ||
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> | <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> | ||
<soap-env:Body> | |||
<ns0:СоздатьНоменклатуру xmlns:ns0="http://88.99.106.214/Mercury"> | |||
<ns0:Номенклатура> | |||
<ns0:Код>ЦБ056513</ns0:Код> | |||
<ns0:Наименование>PERFECT FIT 1,2кг Для стер.кошек и кастр. котов (6)</ns0:Наименование> | |||
<ns0:НаименованиеПолное>корм PERFECT FIT 1,2кг Для стер.кошек и кастр. котов (6) сухой</ns0:НаименованиеПолное> | |||
<ns0:Группа> | |||
<ns0:Код>ЦБ051542</ns0:Код> | |||
<ns0:Наименование>Сухие корма, ж/б</ns0:Наименование> | |||
<ns0:Родитель> | |||
<ns0:Код>ЦБ047054</ns0:Код> | |||
<ns0:Наименование>КОРМА</ns0:Наименование> | |||
<ns0:Родитель> | |||
<ns0:Код>ЦБ000001</ns0:Код> | |||
<ns0:Наименование>МАРС</ns0:Наименование> | |||
</ns0:Родитель> | |||
</ns0:Родитель> | |||
</ns0:Группа> | |||
<ns0:Артикул>10162233 </ns0:Артикул> | |||
<ns0:ЕдХранения/> | |||
<ns0:Скоропортящаяся>false</ns0:Скоропортящаяся> | |||
<ns0:Некачественная>false</ns0:Некачественная> | |||
</ns0:Номенклатура> | |||
</ns0:СоздатьНоменклатуру> | |||
</soap-env:Body> | |||
</soap-env:Envelope> | </soap-env:Envelope> | ||
</file> | </file> | ||
Выполняем команду | Выполняем команду '''curl''': | ||
'curl | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
curl -H "SOAPAction: | curl -H "SOAPAction: \"http:<syntaxhighlight lang='bash'> | ||
88.99.106.214/Mercury#DataExchangeGatewayV2:СоздатьНоменклатуру<br/>"" --data @request.xml --user DefUser:DefUser http: | 88.99.106.214/Mercury#DataExchangeGatewayV2:СоздатьНоменклатуру<br/>"" --data @request.xml --user DefUser:DefUser http: | ||
</syntaxhighlight>t2-gateway.aspcom.ru/gloria_test/ws/DataExchangeGatewayV2.1cws -o response.xml | </syntaxhighlight>t2-gateway.aspcom.ru/gloria_test/ws/DataExchangeGatewayV2.1cws -o response.xml | ||
Строка 99: | Строка 95: | ||
==Выполним детальный разбор команды curl:== | ==Выполним детальный разбор команды curl:== | ||
[[File:curlразбор.png]] | [[File:curlразбор.png]] | ||
# Используемое пространство имен / имя пакета web-сервисов. Данная часть запроса остается неизменной. | |||
# Имя выполняемой операции из списка [[шлюз_выгрузка:описание_сервисов|возможных операций]]. | |||
# Ключ, после которого указываются добавляемые данные http запроса или файл (@file) передаваемый POST-запросом. | |||
# Путь к xml-файлу, содержащему текст выполняемой операции. Можно указывать относительный или абсолютный путь. | |||
# Имя пользователя : Пароль пользователя 1С:Предприятия, которые используются для аутентификации в АСП.Шлюз. | |||
# Адрес сервера, на котором выполнена публикация АСП.Шлюз. | |||
# Имя публикации информационной базы, указанное при публикации базы АСП.Шлюз на веб сервере. | |||
# Адрес web-сервисов. Данная часть запроса остается неизменной. | |||
# Путь к xml-файлу, в который будет записан результат выполнения операции в АСП.Шлюз. Можно указывать относительный или абсолютный путь. | |||
[[Category:Асп.шлюз выгрузка]] | [[Category:Асп.шлюз выгрузка]] | ||
<vote type=1 /> |
Текущая версия от 13:02, 23 мая 2025
Универсальный обмен данными с АСП.Шлюз
- Отправка идёт по HTTP протоколу по персональному адресу на http:gateway.aspcom.ru/имя_базы/ws/DataExchangeGatewayV2.1cws (продукт).
t2-gateway.aspcom.ru/имя_базы/ws/DataExchangeGatewayV2.1cws (тест) или http:
- Для отправки используется WSDL протокол, который позволяется обмениваться пакетами данным в формате XML. t2-gateway.aspcom.ru/gloria_test/ws/DataExchangeGatewayV2.1cws?wsdl //
Пример описания данных: http:
- Заголовки HTTP запроса:
- Authorization: Basic - логин и пароль на уровне базовой авторизации
- SOAPAction: http://88.99.106.214/Mercury#DataExchangeGatewayV2:КомандаЗапроса
Пример использования
Наглядный пример XML запросов и ответов можно Файл:Gate-samples.zip, а так же Файл:Реализация.request.txt и Файл:Производство.request.txt.
Например, для отправки запросов через HTTP может использоваться утилита curl32 Файл:Curl-7.40.0-win64.msi.7z.
Так, допустим мы хотим создать номенклатуру в АСП.Шлюз/
1. База называется "gloria_test" | Имя, указанное при публикации базы АСП.Шлюз на веб сервере | ||
2. Имя пользователя "DefUser" | Логин пользователя 1С для входа в АСП.Шлюз | ||
3. Пароль "DefUser" | Пароль пользователя 1С для входа в АСП.Шлюз | ||
4. Подключаемся через тестовый АСП.Шлюз "http://t2-gateway.aspcom.ru" | Адрес сервера, на котором выполнена публикация АСП.Шлюз | ||
5. Команда АСП.Шлюз: "СоздатьНоменклатуру" | Список всех возможных операций можно можно увидеть, перейдя по ссылке |
Подробное описание доступных операций можно посмотреть тут. | Подробное описание типов объектов можно посмотреть тут.
Подготавливаем XML запрос: <file xml request.xml> <?xml version='1.0' encoding='utf-8'?> <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"> <soap-env:Body> <ns0:СоздатьНоменклатуру xmlns:ns0="http://88.99.106.214/Mercury"> <ns0:Номенклатура> <ns0:Код>ЦБ056513</ns0:Код> <ns0:Наименование>PERFECT FIT 1,2кг Для стер.кошек и кастр. котов (6)</ns0:Наименование> <ns0:НаименованиеПолное>корм PERFECT FIT 1,2кг Для стер.кошек и кастр. котов (6) сухой</ns0:НаименованиеПолное> <ns0:Группа> <ns0:Код>ЦБ051542</ns0:Код> <ns0:Наименование>Сухие корма, ж/б</ns0:Наименование> <ns0:Родитель> <ns0:Код>ЦБ047054</ns0:Код> <ns0:Наименование>КОРМА</ns0:Наименование> <ns0:Родитель> <ns0:Код>ЦБ000001</ns0:Код> <ns0:Наименование>МАРС</ns0:Наименование> </ns0:Родитель> </ns0:Родитель> </ns0:Группа> <ns0:Артикул>10162233 </ns0:Артикул> <ns0:ЕдХранения/> <ns0:Скоропортящаяся>false</ns0:Скоропортящаяся> <ns0:Некачественная>false</ns0:Некачественная> </ns0:Номенклатура> </ns0:СоздатьНоменклатуру> </soap-env:Body> </soap-env:Envelope> </file> Выполняем команду curl:
curl -H "SOAPAction: \"http:<syntaxhighlight lang='bash'>
88.99.106.214/Mercury#DataExchangeGatewayV2:СоздатьНоменклатуру<br/>"" --data @request.xml --user DefUser:DefUser http:
t2-gateway.aspcom.ru/gloria_test/ws/DataExchangeGatewayV2.1cws -o response.xml
</syntaxhighlight> В результате получаем файл: <file xml response.xml> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <m:СоздатьНоменклатуруResponse xmlns:m="http://88.99.106.214/Mercury"> <m:return xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Номенклатура загружена: PERFECT FIT 1,2кг Для стер.кошек и кастр. котов (6)</m:return> </m:СоздатьНоменклатуруResponse> </soap:Body> </soap:Envelope> </file> |
Выполним детальный разбор команды curl:
- Используемое пространство имен / имя пакета web-сервисов. Данная часть запроса остается неизменной.
- Имя выполняемой операции из списка возможных операций.
- Ключ, после которого указываются добавляемые данные http запроса или файл (@file) передаваемый POST-запросом.
- Путь к xml-файлу, содержащему текст выполняемой операции. Можно указывать относительный или абсолютный путь.
- Имя пользователя : Пароль пользователя 1С:Предприятия, которые используются для аутентификации в АСП.Шлюз.
- Адрес сервера, на котором выполнена публикация АСП.Шлюз.
- Имя публикации информационной базы, указанное при публикации базы АСП.Шлюз на веб сервере.
- Адрес web-сервисов. Данная часть запроса остается неизменной.
- Путь к xml-файлу, в который будет записан результат выполнения операции в АСП.Шлюз. Можно указывать относительный или абсолютный путь.