XHR物件的get請求

阿超就是我發表於2017-04-12
昨天美圖面試有一題是寫出XHR是什麼以及寫出其get請求的程式碼。
其實我前幾天才寫過,不過之後又寫了angular.js的$http的get請求,原生的一時間想不起來,就用angular.js寫了。
其實原生的也不復雜
先給出程式碼:
//JS
var xhr=new XMLHttpRequest();
   xhr.onreadystatechange=function () {
       if(xhr.readyState==4){
                if((xhr.status>=200&&xhr.status<300)||xhr.status==304){
               var res=JSON.parse(xhr.responseText);
               alert(res["name1"]);
               alert(res['name2']);
           }else{
               alert("Unsuccessful:"+xhr.status);
           }
       }
   };
   xhr.open("get","test.php?name1=value1&name2=value2",true);
   xhr.send(null);  
//PHP:
$arr['name1']= $_GET["name1"];
$arr["name2"]=$_GET["name2"];
echo json_encode($arr, JSON_UNESCAPED_UNICODE);
  • open函式的第三個參數列示請求是否是非同步的
 xhr.open("get","test.php?name1=value1&name2=value2",true);
  • 返回的JSON資料不要忘記解析為JS物件
var res=JSON.parse(xhr.responseText);

相關文章