Это говорит о том, что схема запроса xml не соответствует ожидаемой.
Не нужен прокси ком
вот пример
Добавить ссылку на Microsoft Xml версии 2.0 или выше
Проверьте этот метод
Public Function PostRequest(urlService As String, soapAction As String, xmlRequest As String) As String
Dim oHttReq As XMLHTTPRequest
Dim Log As Logger
Dim w As w32
Dim filepath As String
Dim response As String
Set oHttReq = New XMLHTTPRequest
oHttReq.open "POST", urlService, False
oHttReq.setRequestHeader "Content-Type", "text/xml; charset=utf-8"
oHttReq.setRequestHeader "SOAPAction", soapAction
oHttReq.send xmlRequest
PostRequest = oHttReq.responseText
If Not oHttReq Is Nothing Then
Set oHttReq = Nothing
End If
End Function
в сервисе url укажите URL веб-сервиса asmx: как-то http://myserver/serviceinterface/serviceinterface.asmx
в действии мыла сначала применил исправленный к какому-либо методу в вашем сервисе, а затем просмотрите определение. В том, что существует тег вызова SoapAction, несколько как SOAPAction: "http://localhost/commonxmlschemas/technology/createcharge" (только пример)
Вы также видите запрос на мыло
POST /myserver/serviceinterface/serviceinterface.asmx HTTP/1.1
Host: myserver
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://localhost/commonxmlschemas/technology/createcharge"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<RequestHeader xmlns="http://localhost/commonxmlschemas/technology/">
<Headers>
<anyType />
<anyType />
</Headers>
</RequestHeader>
</soap:Header>
<soap:Body>
<createcharge xmlns="http://localhost/commonxmlschemas/technology/">
<chargeRequest xmlns="http://localhost/commonxmlschemas/technology/chargeRequest.xsd">
<charge>
<creditcard xmlns="http://localhost/commonxmlschemas/technology/Charge.xsd">string</creditcard>
<amount xmlns="http://localhost/commonxmlschemas/technology/Charge.xsd">int</amount>
</charge>
<Tag>string</Tag>
</chargeRequest>
</createcharge>
</soap:Body>
</soap:Envelope>
копия с
<?xml to </soap:Envelope>
теперь этот параметр xmlRequest заполняет только параметры этого xmlRequest и отправляет его в метод PostRequest
просто, нет?