Как отправить SOAP запрос.

akxxiv

Новичок
Всем доброго времени суток. Битый час читаю про SOAP, а понимания не приходит. Особенно после того как пообщался с 1С-никами, совсем разуверился в своих способностях понимать людей ))

Короче надо отправлять информацию на веб-сервис, а именно:

Обмен происходит по протоколу SOAP 1.2 . Файл отправки формируется на основании XML Schema (AddPointService-schema).

АдресWSDL: https://raos-1c.ehrmann.ru/merc_addpoint/ws/ws3.1cws?wsdl

URIПространстваИмен: http://www.sample-package.org
ИмяСервиса: WebAddPoint
ИмяТочкиПодключения: WebAddPointSoap12

Туда надо отправить такой вот XML файл:
HTML:
<waybill>
    <issueNumber>102514428</issueNumber>
    <issueDate>2017-09-27T00:00:00</issueDate>
    <transportInfo>
        <transportType>1</transportType>
        <transportNumber>
            <vehicleNumber>О044АУ31</vehicleNumber>
            <trailerNumber>АН252531</trailerNumber>
        </transportNumber>
    </transportInfo>
    <shipmentRoute>
        <routePoint>
            <sqnId>1</sqnId>
            <location>
                <name>Склад Перевозчика (Ростов-на-Дону)</name>
                <address>346720, Ростовская обл, Аксайский р-н, Аксай г, Западная ул, дом № 35 Е</address>
            </location>
            <enterprise>
                <GUID>1ffcb776-a451-4ac8-82b2-367005c87f7a</GUID>
                <name>Склад Перевозчика (Ростов-на-Дону)</name>
                <address>346720, Ростовская обл, Аксайский р-н, Аксай г, Западная ул, дом № 35 Е</address>
            </enterprise>
            <transshipment>true</transshipment>
            <nextTransport>
                <transportType>1</transportType>
                <transportNumber>
                    <vehicleNumber>Р617НВ161</vehicleNumber>
                    <trailerNumber/></transportNumber>
            </nextTransport>
        </routePoint>
    </shipmentRoute>
</waybill>
Не понимаю как и куда это отправлять? Спрашиваю у 1С-ников, говорят надо сгенерировать по схеме запрос и отправить на точку доступа. В документации SOAP про точку доступа ничего не нашел, это даже не адрес куда надо отправлять. Видимо я как-то не могу понять саму суть этого процесса.

Можете показать как это надо делать?
 

akxxiv

Новичок
Спасибо конечно, но это я уже читал. Тут мне не понятно вот что:

1. Что из описанного мной является location? ибо по заявлению 1C-ников - это точка подключения, но это ведь не URL
2. Как отправить туда файл? Ибо в примерах указывают в параметрах лишь массивы.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Тебе не нужно отправлять туда файл. Ты создаешь экземпляр соапКлиента, передав ему описание сервиса (wsdl) — получаешь объект сразу с созданными нужными методами, которые описаны в этом wsdl. Вызываешь эти методы, передавая им нужные данные. Твой «файл» сформируется клиентом автоматически. Список методов и формат можешь посмотреть вызывая спецметоды __getFuctions() и тд, или просто засунь wsdl в какой-нибудь соап-эксплорер типа https://www.soapui.org
 

akxxiv

Новичок
Тебе не нужно отправлять туда файл. Ты создаешь экземпляр соапКлиента, передав ему описание сервиса (wsdl) — получаешь объект сразу с созданными нужными методами, которые описаны в этом wsdl. Вызываешь эти методы, передавая им нужные данные. Твой «файл» сформируется клиентом автоматически. Список методов и формат можешь посмотреть вызывая спецметоды __getFuctions() и тд, или просто засунь wsdl в какой-нибудь соап-эксплорер типа https://www.soapui.org
Ах вот оно что! Ничего себе, вашу маму и там, и тут передают... До чего техника дошла! ))) Спасибо. осталось дождаться чтобы мой IP внесли в список разрешенных к доступу )))
 
Сверху