Как организовать обмен xml данными:
Клиент отправляет отправляет запросы с помощью XMLHttpRequest.
Сервер - Node.js.
Если исходить из учебника, то получается, что приём ответа на запрос происходит раньше, чем отправка данных на сервер.
Если обработку ответа на запрос писать после xhr.send(body), то до её выполнения дело просто не доходит.
Клиент:
http://localhost:9000
Сервер:
http://127.0.0.1:8080
Код клиента:
elem.onclick = function() {
console.log("Button pressed");
let xhr = new XMLHttpRequest();
xhr.open('POST', 'http://127.0.0.1:8080', true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
let body ="<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n" +
"<digiseller.request>\n" +
" <seller>\n" +
" <id>505197</id>\n" +
" </seller>\n" +
" <category>\n" +
" <id></id>\n" +
" </category>\n" +
" <lang></lang>\n" +
"</digiseller.request>";
xhr.onreadystatechange = function() { // (3)
if (xhr.readyState != 4) return;
elem.innerHTML = 'Ready!';
if (xhr.status != 200) {
alert(xhr.status + ': ' + xhr.statusText);
} else {
alert(xhr.responseText);
}
};
//location.href = 'http://localhost:9000/untitled/client1.html';
xhr.send(body);
// alert("response "+ xhr.responseText);
};