Отправка запроса в виде XML файла на сервер и получение ответа
Всем доброго времени суток. Бьюсь над вопросом и даже понять не могу чем его решать.
есть у меня некое приложение - сервер крутится на машине и принимает команды через POST и GET запросы. С ней можно работать через curl установленный на ОС. Например необходимо мне получить от этого ПО все мои запросы и я через командную строку пишу: Код:
curl -X GET http://localhost:8080/opt/inКод:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
$host = 'http://localhost:8080/opt/out?refresh=true';
var xmlhttp = new XMLHttpRequest();
var xhrp = new XMLHttpRequest();
xmlhttp.open('GET', $host, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
$xml_in = xmlhttp.responseText; // сохраняем полученный ответ от УТМ
//дальше пошла передача xml на сервер для обработки на PHP, парса и записи в БД
xhrp.open('POST', "xml_executer.php", true)
xhrp.setRequestHeader('Content-type', 'text/xml');
xhrp.send($xml_in);
xhrp.onload = function() {
$('#ajaxOutData').html(this.responseText); // выводим результат на странице в div id="ajaxOutData"
}
}
}
};
xmlhttp.send(null);
на php обработка в файле xml_executer.php предельно проста:
<?PHP
$xml = simplexml_load_string(file_get_contents("php://input"));
foreach ($xml->url as $url) {
echo "ссылка: ".$url;
echo ". Атрибут: ".(string)$url['replyId'];
echo "<br/>";
}
?>
Но дальше проблема возникла неожиданно. Мне необходимо на этот сервер передавать запрос в виде xml файла. На том же curl это выглядит так: Код:
curl -F "xml_file=@C:\WebServers\home\test.ru\www\xml_in\client.xml" http://localhost:8080/opt/in/QueryPartnerКод:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>Спасибо всем за внимание!!! |
| Часовой пояс GMT +3, время: 01:54. |