EMDM
Новичок
Добрый день! Разрабатываю модуль для передачи данных с сайта в систему FastOperator (fast-operator.ru).
В ответ пустота. Если посмотреть на сформированный запрос в виде xml, то он формируется не корректно почему-то. А точнее там не передается $xml.
С SOAP-сервисами знаком неделю. Не знаю какие еще данные указать. В какую строну копать? Помогите, пожалуйста.
PHP:
$wdsl = 'http://212.44.134.166:2001/FastOperator.asmx?WSDL';
$client = new SoapClient($wdsl, array(
'trace' => true
,'exceptions' => true
));
//второй параметр просто комментарий к заказу
$result = $client->addOrder($xml, 'test');
XML:
<?xml version="1.0" encoding="UTF-8"?>
<Order DiscountPercent="0" PayMethod="Наличные" OrderId="19594" Type="Доставка" DeliveryPrice="0" RemarkMoney="4000" Department="0" TimePlan="">
<Customer Login="" Name="Тестович" FIO="Тестович"></Customer>
<Phone Code="955" Number="7230067" Remark=""></Phone>
<Remark><![CDATA[Сдача с 4000]]></Remark>
<Address CityName="Москва" StationName="КАЛУЖСКАЯ" StreetName="ВОРОНЦОВСКИЕ ПРУДЫ" House="3" Corpus="" Building="" Floor="19" Flat="54" Porch="5" DoorCode="" RoomType="квартира">
<Remark><![CDATA[доставка желательна к 14]]></Remark>
</Address>
<Products>
<Product DiscountPercent="0" Code="804" Price="800" Qty="2">
<Remark><![CDATA[]]></Remark>
</Product>
<Product DiscountPercent="0" Code="717" Price="500" Qty="1">
<Remark><![CDATA[]]></Remark>
</Product>
<Product DiscountPercent="0" Code="721" Price="750" Qty="1">
<Remark><![CDATA[]]></Remark>
</Product>
<Product DiscountPercent="0" Code="700" Price="880" Qty="1">
<Remark><![CDATA[]]></Remark>
</Product>
</Products>
</Order>
С SOAP-сервисами знаком неделю. Не знаю какие еще данные указать. В какую строну копать? Помогите, пожалуйста.
Request Headers
POST / HTTP/1.1
Host: 212.44.134.166:2001
Connection: Keep-Alive
User-Agent: PHP-SOAP/7.1.30
Content-Type: text/xml; charset=utf-8
SOAPAction: "www.fast-operator.ru/AddOrder"
Content-Length: 240
Response Headers
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 24 Sep 2019 16:41:44 GMT
Content-Length: 330
POST / HTTP/1.1
Host: 212.44.134.166:2001
Connection: Keep-Alive
User-Agent: PHP-SOAP/7.1.30
Content-Type: text/xml; charset=utf-8
SOAPAction: "www.fast-operator.ru/AddOrder"
Content-Length: 240
Response Headers
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 24 Sep 2019 16:41:44 GMT
Content-Length: 330
LastRequest:
LastResponse:
XML:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="www.fast-operator.ru">
<SOAP-ENV:Body>
<ns1:AddOrder/><!-- по-идеи тут должен передаваться $xml как-то -->
<param1>Test 1</param1>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<AddOrderResponse xmlns="www.fast-operator.ru">
<AddOrderResult /><!-- здесь по-идеи ответ должен быть, но т.к. ничего не передалось, ничего и не вернулось -->
</AddOrderResponse>
</soap:Body>
</soap:Envelope>