AJAX - XMLHttpRequest ¶ÔÏó

Ajax µÄºËÐÄÊÇ XMLHttpRequest ¶ÔÏó¡£

XMLHttpRequest ¶ÔÏó

ËùÓÐÏÖ´úä¯ÀÀÆ÷¶¼Ö§³Ö XMLHttpRequest ¶ÔÏó¡£

XMLHttpRequest ¶ÔÏóÓÃÓÚͬĻºó·þÎñÆ÷½»»»Êý¾Ý¡£ÕâÒâζ×Å¿ÉÒÔ¸üÐÂÍøÒ³µÄ²¿·Ö£¬¶ø²»ÐèÒªÖØÐ¼ÓÔØÕû¸öÒ³Ãæ¡£

´´½¨ XMLHttpRequest ¶ÔÏó

ËùÓÐÏÖ´úä¯ÀÀÆ÷£¨Chrom¡¢IE7+¡¢Firefox¡¢Safari ÒÔ¼° Opera£©¶¼ÓÐÄÚ½¨µÄ XMLHttpRequest ¶ÔÏó¡£

´´½¨ XMLHttpRequest µÄÓï·¨ÊÇ£º

variable = new XMLHttpRequest();

Àϰ汾µÄ Internet Explorer£¨IE5 ºÍ IE6£©Ê¹Óà ActiveX ¶ÔÏó£º

variable = new ActiveXObject("Microsoft.XMLHTTP");

ΪÁËÓ¦¶ÔËùÓÐä¯ÀÀÆ÷£¬°üÀ¨ IE5 ºÍ IE6£¬Çë¼ì²éä¯ÀÀÆ÷ÊÇ·ñÖ§³Ö XMLHttpRequest ¶ÔÏó¡£Èç¹ûÖ§³Ö£¬´´½¨ XMLHttpRequest ¶ÔÏó£¬Èç¹û²»Ö§³Ö£¬Ôò´´½¨ ActiveX ¶ÔÏó£º

ʵÀý

var xhttp;
if (window.XMLHttpRequest) {
    xhttp = new XMLHttpRequest();
    } else {
    // code for IE6, IE5
     xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}

Ç××ÔÊÔÒ»ÊÔ

¿çÓò·ÃÎÊ

³öÓÚ°²È«Ô­Òò£¬ÏÖ´úä¯ÀÀÆ÷²»ÔÊÐí¿çÓò·ÃÎÊ¡£

ÕâÒâζ×ų¢ÊÔ¼ÓÔØµÄÍøÒ³ºÍ XML Îļþ¶¼±ØÐëλÓÚÏàͬ·þÎñÆ÷ÉÏ¡£

W3School ÉϵÄʵÀý¶¼»á´ò¿ªÎ»ÓÚ W3School ÓòÉ쵀 XML Îļþ¡£

Èç¹ûÄúÏ£ÍûÔÚ×Ô¼ºµÄÒ³ÃæÉÏʹÓÃÒÔÉÏʵÀý£¬ÄÇôÄúËù¼ÓÔØµÄ XML Îļþ±ØÐëλÓÚÄú×Ô¼ºµÄ·þÎñÆ÷ÉÏ¡£

Àϰ汾µÄ Internet Explorer£¨IE5 ºÍ IE6£©

Àϰ汾µÄ Internet Explorer£¨IE5 ºÍ IE6£©²»Ö§³Ö XMLHttpRequest ¶ÔÏó¡£

ΪÁ˶Ը¶ IE5 ºÍ IE6£¬Çë¼ì²éä¯ÀÀÆ÷ÊÇ·ñÖ§³Ö XMLHttpRequest ¶ÔÏó£¬Òà»ò´´½¨ ActiveXObject ¶ÔÏó£º

ʵÀý

if (window.XMLHttpRequest) {
    // ÓÃÓÚÏÖ´úä¯ÀÀÆ÷µÄ´úÂë
     xmlhttp = new XMLHttpRequest();
 } else {
    // Ó¦¶ÔÀϰ汾 IE ä¯ÀÀÆ÷µÄ´úÂë
     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 }

Ç××ÔÊÔÒ»ÊÔ

XMLHttpRequest ¶ÔÏó·½·¨

·½·¨ ÃèÊö
new XMLHttpRequest() ´´½¨Ð嵀 XMLHttpRequest ¶ÔÏó
abort() È¡Ïûµ±Ç°ÇëÇó
getAllResponseHeaders() ·µ»ØÍ·²¿ÐÅÏ¢
getResponseHeader() ·µ»ØÌض¨µÄÍ·²¿ÐÅÏ¢
open(method, url, async, user, psw)

¹æ¶¨ÇëÇó

  • method£ºÇëÇóÀàÐÍ GET »ò POST
  • url£ºÎļþλÖÃ
  • async£ºtrue£¨Òì²½£©»ò false£¨Í¬²½£©
  • user£º¿ÉÑ¡µÄÓû§Ãû³Æ
  • psw£º¿ÉÑ¡µÄÃÜÂë
send() ½«ÇëÇó·¢Ë͵½·þÎñÆ÷£¬ÓÃÓÚ GET ÇëÇó
send(string) ½«ÇëÇó·¢Ë͵½·þÎñÆ÷£¬ÓÃÓÚ POST ÇëÇó
setRequestHeader() ÏòÒª·¢Ë͵ı¨Í·Ìí¼Ó±êÇ©/Öµ¶Ô

XMLHttpRequest ¶ÔÏóÊôÐÔ

ÊôÐÔ ÃèÊö
onreadystatechange ¶¨Òåµ± readyState ÊôÐÔ·¢Éú±ä»¯Ê±±»µ÷Óõĺ¯Êý
readyState

±£´æ XMLHttpRequest µÄ״̬¡£

  • 0£ºÇëÇóδ³õʼ»¯
  • 1£º·þÎñÆ÷Á¬½ÓÒѽ¨Á¢
  • 2£ºÇëÇóÒÑÊÕµ½
  • 3£ºÕýÔÚ´¦ÀíÇëÇó
  • 4£ºÇëÇóÒÑÍê³ÉÇÒÏìÓ¦ÒѾÍÐ÷
responseText ÒÔ×Ö·û´®·µ»ØÏìÓ¦Êý¾Ý
responseXML ÒÔ XML Êý¾Ý·µ»ØÏìÓ¦Êý¾Ý
status

·µ»ØÇëÇóµÄ״̬ºÅ

  • 200: "OK"
  • 403: "Forbidden"
  • 404: "Not Found"

ÈçÐèÍêÕûÁбíÇë·ÃÎÊ Http ÏûÏ¢²Î¿¼ÊÖ²á

statusText ·µ»Ø×´Ì¬Îı¾£¨±ÈÈç "OK" »ò "Not Found"£©
VUE