ఏజాక్స్ - సర్వర్ రెస్పాంస్
- ముంది పేజీ AJAX రెక్యూస్ట్
- తరువాతి పేజీ AJAX XML ఫైల్
కోర్సు పరిశీలన:
readyState
onreadystatechange అనునది ప్రతిస్పందన స్థితి ప్రతిస్పందం
onreadystatechange
ప్రతిస్పందన స్థితిని నిర్వహిస్తుంది.
status
ప్రతిస్పందన స్థితి మారితే అమలు చేసే ఫంక్షన్ను నిర్వహిస్తుంది. హ్ట్ట్ప్ సందేశాల ప్రమాణిక పుస్తకం
ప్రతిస్పందన స్థితిని స్థిరపరచుతుంది.
అంశం | వివరణ |
---|---|
onreadystatechange | ప్రతిస్పందన స్థితి మారితే అమలు చేసే ఫంక్షన్ను నిర్వహిస్తుంది. |
readyState |
ప్రతిస్పందన స్థితిని నిర్వహిస్తుంది.
|
status |
404: "Page not found" పూర్తి జాబితా కోసం సందర్శించండి |
హ్ట్ట్ప్ సందేశాల ప్రమాణిక పుస్తకం | statusText |
ప్రతిస్పందన స్థితి ప్రతిస్పందంతో పునఃప్రారంభం అయింది (ఉదాహరణకు "OK" లేదా "Not Found") ప్రతిస్పందన స్థితి మారితే
ప్రతిస్పందన స్థితి మారితే onreadystatechange ఫంక్షన్ను కాల్చేస్తారు. readyState
కోసం 4
,status
కోసం 200
ఈ సమయంలో ప్రతిస్పందన సిద్ధం అయింది:
ఇన్స్టాన్స్
function loadDoc() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; }; }; xhttp.open("GET", "ajax_info.txt", true); xhttp.send(); };
పేర్కొనాలి:onreadystatechange
మూడు సార్లు జరిగింది (0-4), ప్రతి సారి readyState
మొత్తం మారుతుంది.
కాల్బ్యాక్ ఫంక్షన్ను వాడటం
మరొక ఫంక్షన్కు పారామిటర్గా పంపబడే ఫంక్షన్లు కాల్బ్యాక్ ఫంక్షన్లు అని పిలుస్తారు.
మీ వెబ్సైట్లో అనేక AJAX కార్యక్రమాలు ఉన్నట్లయితే, మీరు XMLHttpRequest ఆబ్జెక్ట్ను అమలు చేసే ఫంక్షన్ను మరియు ప్రతి అజెక్స్ కార్యక్రమానికి కాల్బ్యాక్ ఫంక్షన్ను సృష్టించవలసి ఉంటుంది.
ఈ ఫంక్షన్లో URL మరియు ప్రత్యుత్తరం సిగ్నలైనప్పుడు కాల్చబడే ఫంక్షన్ను చేర్చండి.
ఇన్స్టాన్స్
loadDoc("url-1", myFunction1); loadDoc("url-2", myFunction2); function loadDoc(url, cFunction) { var xhttp; xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { cFunction(this); }; }; xhttp.open("GET", url, true); xhttp.send(); }; function myFunction1(xhttp) { // ఇక్కడ చర్య జరుగుతుంది }; function myFunction2(xhttp) { // ఇక్కడ చర్య జరుగుతుంది };
సర్వర్ ప్రత్యుత్తర అంశం
అంశం | వివరణ |
---|---|
responseText | స్ట్రింగ్ రూపంలో ప్రత్యుత్తర సమాచారాన్ని పొందడానికి |
responseXML | XML రూపంలో ప్రత్యుత్తర సమాచారాన్ని పొందడానికి |
సర్వర్ ప్రత్యుత్తర పద్ధతి
పద్ధతి | వివరణ |
---|---|
getResponseHeader() | సర్వర్ నుండి ప్రత్యేక హెడర్ సమాచారాన్ని పొందడానికి |
getAllResponseHeaders() | సర్వర్ నుండి అన్ని హెడర్ సమాచారాన్ని పొందడానికి |
responseText అంశం
responseText
అంశం ద్వారా సర్వర్ ప్రత్యుత్తరాన్ని JavaScript స్ట్రింగ్ రూపంలో పొందవచ్చు, కాబట్టి మీరు దానిని ఈ ప్రకారం ఉపయోగించవచ్చు:
ఇన్స్టాన్స్
document.getElementById("demo").innerHTML = xhttp.responseText;
responseXML అంశం
XML HttpRequest ఆబ్జెక్ట్కు ఒక బౌట్స్ పరిశీలకిని ఉంది.
ResponseXML
అంశం ద్వారా సర్వర్ ప్రత్యుత్తరాన్ని XML DOM ఆబ్జెక్ట్ రూపంలో పొందవచ్చు.
ఈ అంశం ద్వారా ప్రత్యుత్తరాన్ని XML DOM ఆబ్జెక్ట్ రూపంలో పొందవచ్చు:పరిశీలనXML DOM ఆబ్జెక్ట్ కొరకు:
ఇన్స్టాన్స్
అభ్యర్థించబడిన ఫైలు music_list.xmlమరియు ప్రత్యుత్తరాన్ని పరిశీలించండి:
xmlDoc = xhttp.responseXML; txt = ""; x = xmlDoc.getElementsByTagName("ARTIST"); for (i = 0; i < x.length; i++) { txt += x[i].childNodes[0].nodeValue + "<br>"; }; document.getElementById("demo").innerHTML = txt; xhttp.open("GET", "music_list.xml", true); xhttp.send();
ఈ ట్యూటోరియల్ లోని DOM చాప్టర్లో XML DOM గురించి మరింత తెలుసుకోనున్నారు.
getAllResponseHeaders() మాథోడ్
getAllResponseHeaders()
మాథోడ్ సర్వర్ ప్రత్యుత్తరం నుండి అన్ని హెడర్ సమాచారాన్ని తిరిగి ఇవ్వబడుతుంది.
ఇన్స్టాన్స్
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.getAllResponseHeaders(); }; };
getResponseHeader() మాథోడ్
getResponseHeader()
మాథోడ్ సర్వర్ ప్రత్యుత్తరం నుండి ప్రత్యేక హెడర్ సమాచారాన్ని తిరిగి ఇవ్వబడుతుంది.
ఇన్స్టాన్స్
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.getResponseHeader("Last-Modified"); }; }; xhttp.open("GET", "ajax_info.txt", true); xhttp.send();
- ముంది పేజీ AJAX రెక్యూస్ట్
- తరువాతి పేజీ AJAX XML ఫైల్