1. 程式人生 > >ajax-----readyState總結

ajax-----readyState總結

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<script>
		//1.建立一個XMLHttpRequest物件,相當於開啟一個瀏覽器視窗
		var xhr = new XMLHttpRequest();
		console.log(xhr.readyState);//=================這裡為0,表示剛建立這個物件
		//2.開啟一個與網址之間了連線,相當於在位址列輸入了網址
		xhr.open('GET','/06php/user.php');
		//3.傳送請求
		console.log(xhr.readyState);//=================這裡為1,表示已經呼叫了這個方法
		xhr.send();
		console.log(xhr.readyState);//=================這裡為1,
		//4.指定狀態事件處理函式
		xhr.onreadystatechange=function(){

			switch(this.readyState){
				//readyState=2     //==================這裡為2,說明接受了響應,能拿到響應頭
				case 2:
				//能拿到響應頭
				console.log(this.getAllResponseHeaders())
				//但是拿不到響應體
				console.log(this.responseText);
				break;
                
                ////readyState=3  //===================正在下載這個響應報文,能不能拿到取決於報文大小
				case 3:
				//可能拿得到,也可能拿不到
				console.log(this.responseText);
				break;

				//readyState=4==========================這裡完全可以拿到,一般我們是 在這裡再處理後面的東西

				console.log(this.responseText);
				break;



			}
		};

	</script>
</body>
</html>