Odpověď serveru AJAX XMLHttpRequest


Obsah

    Zobrazit obsah


Vlastnosti odezvy serveru

responseText

získat data odpovědi jako řetězec

responseXML

získat data odpovědi jako data XML


Vlastnost responseText

Vlastnost responseText vrací odpověď serveru jako a JavaScriptový řetězec a můžete jej použít odpovídajícím způsobem:

Příklad

document.getElementById("demo").innerHTML = xhttp.responseText;

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<div id="demo">
<h2>The XMLHttpRequest Object</h2>
<button type="button" onclick="loadDoc()">Change Content</button>
</div>

<script>
function loadDoc() {
  const xhttp = new XMLHttpRequest();
  xhttp.onload = function() {
    document.getElementById("demo").innerHTML =
    this.responseText;
  }
  xhttp.open("GET", "ajax_info.txt");
  xhttp.send();
}
</script>

</body>
</html>

Vlastnost responseXML

Objekt XMLHttpRequest má vestavěný analyzátor XML.

Vlastnost responseXML vrací odpověď serveru jako objekt XML DOM.

Pomocí této vlastnosti můžete analyzovat odpověď jako objekt XML DOM:

Příklad

Vyžádejte si soubor cd_catalog.xml a analyzujte odpověď:

const xmlDoc = xhttp.responseXML;
const x = xmlDoc.getElementsByTagName("ARTIST");

let txt = "";
for (let i = 0; i < x.length; i++) {
  txt += x[i].childNodes[0].nodeValue + "<br>";
  }
document.getElementById("demo").innerHTML = txt;

xhttp.open("GET", 
 "cd_catalog.xml");
xhttp.send();

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>The XMLHttpRequest Object</h2>
<p id="demo"></p>
 
<script>
const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
  const xmlDoc = this.responseXML;
  const x = xmlDoc.getElementsByTagName("ARTIST");
  let txt = "";
  for (let i = 0; i < x.length; i++) {
    txt = txt + x[i].childNodes[0].nodeValue + "<br>";
  }
  document.getElementById("demo").innerHTML = txt;
}
xhttp.open("GET", "cd_catalog.xml");
xhttp.send();
</script>

</body>
</html>


Metody odezvy serveru

getResponseHeader()

Vrátí konkrétní informace záhlaví ze zdroje serveru

getAllResponseHeaders()

Vrátí všechny informace záhlaví ze zdroje serveru


Metoda getAllResponseHeaders()

Metoda getAllResponseHeaders() vrací všechny informace záhlaví z odpovědi serveru.

Příklad

const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
    document.getElementById("demo").innerHTML =
    this.getAllResponseHeaders();
}
xhttp.open("GET", "ajax_info.txt");
xhttp.send();

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>The XMLHttpRequest Object</h2>
<p>The getAllResponseHeaders() function returns all the header information of a resource, like length, server-type, content-type, last-modified, etc:</p>

<p id="demo"></p>

<script>
const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
  document.getElementById("demo").innerHTML =
  this.getAllResponseHeaders();
}
xhttp.open("GET", "ajax_info.txt");
xhttp.send();
</script>

</body>
</html>

Metoda getResponseHeader().

Metoda getResponseHeader() vrací konkrétní informace záhlaví z odpovědi serveru.

Příklad

const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
    document.getElementById("demo").innerHTML =
    this.getResponseHeader("Last-Modified");
}
xhttp.open("GET", "ajax_info.txt");
xhttp.send();

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>The XMLHttpRequest Object</h2>

<p>The getResponseHeader() function is used to return specific header information from a resource, like length, server-type, content-type, last-modified, etc:</p>

<p>Last modified: <span id="demo"></span></p>

<script>
const xhttp=new XMLHttpRequest();
xhttp.onload = function() {
  document.getElementById("demo").innerHTML =
  this.getResponseHeader("Last-Modified");
}
xhttp.open("GET", "ajax_info.txt");
xhttp.send();
</script>

</body>
</html>