Excel vba скрипт для отправки xml данных на сервер
Надо исправить VB скрипт отправки xml данных на сервер.
Вот существующий код:
Sub SendXML()
'HTTP variable
Dim myHTTP As MSXML2.xmlhttp
'HTTP object
'Set myHTTP = CreateObject("msxml2.xmlhttp")
Set myHTTP = New MSXML2.xmlhttp
'create dom document variable
'stores the xml to send
Dim myDom As MSXML2.DOMDocument
'Create the DomDocument Object
'Set myDom = CreateObject("MSXML2.DOMDocument")
Set myDom = New MSXML2.DOMDocument
'Load entire Document before moving on
myDom.async = False
'xml string variable
'replace with location if sending from file or URL
Dim myxml As String
myxml = "" & _
"" & _
"363e5b2b2fb02543a9cedc6e4f1470bc" & _
"" & _
"" & _
"" & _
""
myDom.LoadXML myxml
'open the connection
myHTTP.Open "post", "http://orders.novaposhta.ua/xml.php", False
myHTTP.setRequestHeader "Content-Type", "text/xml"
'send the XML
myHTTP.send myDom.xml
'Display the response
MsgBox myHTTP.responseText
End Sub
С таким кодом компилятор пишет: Отказано в доступе
если в строке myHTTP.send myDom.xml написать myHTTP.send myxml , тогда возвращяеться ответ с сервера "No XML object". А в нормальном варианте должен возвращяться ответ такого плана:
Я даже не знаю в каком направлении копать чтоб исправить код.
На сайте на который отправляется xml есть пример кода на php для отправки xml на сервер, возможно он поможет:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://orders.novaposhta.ua/xml.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml"));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
$response = curl_exec($ch);
curl_close($ch);