XMLHttpRequest open()

admin發表於2020-05-23

向伺服器傳送請求之前,可以通過 open() 方法初始化一個 AJAX 請求。

此方法可以規定 HTTP 請求的方式、目標 URL、是否採用非同步方式,以及一些其他設定。

關於 XMLHttpRequest 更多內容參閱 XMLHttpRequest  物件 一章節。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
XMLHttpRequest.open(method, url, async, user, password);

引數解析:

(1).method:規定 AJAX 傳送 HTTP 請求的型別,可以是 GET 或者 POST。

(2).url:規定 AJAX 請求的目標 地址。

(3).async:規定請求是非同步方式還是同步方式,true 為非同步,false 為同步,預設為 true。

(4).user:可選,如果伺服器需要驗證,指定使用者名稱,如果未指定,伺服器需要驗證時,會彈出驗證視窗。

(5).password:可選,驗證資訊中的密碼部分,如果使用者名稱為空,則此值將被忽略。

程式碼例項:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="https://www.softwhy.com/" />
<title>螞蟻部落</title>
<script>
let loadXMLDoc = ()=> {
  let xmlHttp = new XMLHttpRequest();
  xmlHttp.onreadystatechange = ()=> {
    if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
      document.getElementById("show").innerHTML = xmlHttp.responseText;
    }
  }
  xmlHttp.open("GET","demo/ajax/txt/demo.txt",true);
  xmlHttp.send();
}
window.onload =()=> {
  let oBt = document.getElementById("bt");
  oBt.onclick = ()=> {
    loadXMLDoc();
  }
}
</script>
</head>
<body>
<div id="show">
  <h2>原來的內容</h2>
</div>
<input type="button" id="bt" value="檢視效果"/>
</body>
</html>

上面是一個簡單的 AJAX 請求,簡單分析如下:

(1).AJAX 向伺服器傳送請求前一定要做一些準備工作,比如建立 XMLHttpRequest 物件等。

(2).xmlHttp.open("GET","demo/ajax/txt/demo.txt",true) 此方法就是準備工作之一。

(3).準備工作完成之後,就可以用 send() 方法傳送 HTTP 請求了。

相關文章