使用 XMLHttpRequest
要送出一個 HTTP 請求,需要建立一個
XMLHttpRequest
物件、開啟一個 URL,並發起一個請求。在交易(transaction)完成後,
XMLHttpRequest
物件將會包含如回應內容(response body)及
HTTP 狀態
等等請求結果中的有用資訊。本頁概述了一些常見的、甚至略為難理解的
XMLHttpRequest
物件使用案例。
function reqListener () {
console.log(this.responseText);
var oReq = new XMLHttpRequest();
oReq.addEventListener("load", reqListener);
oReq.open("GET", "http://www.example.org/example.txt");
oReq.send();
請求類型
透過
XMLHttpRequest
建立的請求,其取得資料的方式可以為非同步(asynchronously)或同步(synchronously)兩種之一。請求的種類是由
XMLHttpRequest.open()
(en-US)
方法的選擇性參數
async
(第三個參數)決定。若
async
參數為
true
或是未指定,
XMLHttpRequest
會被設定為非同步,相反的若為
false
則會被設定為同步。這兩種請求類型的細節討論與示範可以在
同步與非同步請求
頁面中找到。一般來說,很少會使用到同步請求。
備註: 自 Gecko 30.0 開始,在主執行緒上的同步請求因其差勁的使用者體驗已被棄用。