Я написал мыльный сервис на PHP, используя nusoap. Он отлично работает с тестовым клиентом, который я написал на PHP, однако наш клиент написал свой клиент на vb.net, и он не работает. Я не вижу никаких ошибок, но служба неправильно анализирует его запросы.
Я позволяю nusoap генерировать WSDL, и это выглядит нормально. Если я сравниваю сообщение, которое я отправляю, с одним из его сообщений, я вижу несколько различий в конверте, но я не уверен, является ли проблема моей или его стороной.
Вот хорошие и плохие ответы.
Хорошо:
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns6361:uploadDocument xmlns:ns6361="http://tempuri.org">
<__numeric_0>
<firmCode xsi:type="xsd:string">999*site1</firmCode>
<docID xsi:type="xsd:string">id</docID>
<docType xsi:type="xsd:string">tif</docType>
<document xsi:type="xsd:string">SUkqAMpDAAAmoFy..lots of data omitted here</document>
</__numeric_0>
</ns6361:uploadDocument>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Bad:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://www.inassist.com/docupload"
xmlns:types="http://www.inassist.com/docupload/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<q1:uploadDocument xmlns:q1="urn:server">
<firmCode xsi:type="xsd:string">999*site1</firmCode>
<docID xsi:type="xsd:string">0000007126</docID>
<docType xsi:type="xsd:string">PDF</docType>
<document xsi:type="xsd:base64Binary">JVBERi0xLj..data omitted...</document>
</q1>
</soap:Body>
</soap:Envelope>
Может кто-нибудь указать мне правильное направление? Спасибо.