AJAX入門--- XMLHttpRequest對象的屬性和方法

來源:互聯網
上載者:User

標籤:ajax xmlhttprequest   ajax   xmlhttprequest   

         由於剛剛接觸到Ajax對其比較陌生,而其中的XMLHttpRequest對象更是未曾聽聞。開始學之前,瞭解一下它的屬性和方法為它的使用做下鋪墊。本文重點介紹XMLHttpRequest的屬性和方法。

         XMLHttpRequest對象的屬性和事件

屬性

描述

readyState

表示XMLHttpRequest對象的狀態[1]

responseText

包含用戶端接收到的HTTP相應的常值內容[2]

responseXML

伺服器響應的XML內容對應的DOM對象[3]

status

伺服器返回http狀態代碼[4]

statusText

伺服器返回狀態代碼的文本資訊[5]

事件

描述

onreadystatechange

當readyState屬性發生變化時觸發此事件,用於觸發回呼函數。

 

[1]:

狀態

名稱

描述

0

Uninitialized

初始化狀態。XMLHttpRequest 對象已建立或已被 abort() 方法重設。

1

Open

open() 方法已調用,但是 send() 方法未調用。請求還沒有被發送。

2

Send

Send() 方法已調用,HTTP 要求已發送到 Web 服務器。未接收到響應。

3

Receiving

所有回應標頭部都已經接收到。響應體開始接收但未完成。

4

Loaded

HTTP 響應已經完全接收。

[2]:readyState=4時,responseText包含完整的響應資訊。

readyState=3時,responseText包含未完整的響應資訊。

readyState<3時,responseText為空白字串。

[3]:當readyState=4,並且回應標頭部的Content-Type的MIME類型為XML(text/xml或application/xml)時,該屬性有值並且被解析成一個XML文檔。其它情況為null,包括回傳的XML文檔不良或未完成響應回傳。

[4]:如 200 表示成功,而 404 表示 "NotFound" 錯誤。當 readyState 小於 3 的時候讀取這一屬性會導致一個異常。

[5]:當狀態為 200 的時候它是"OK",當狀態為 404 的時候它是 "Not Found"。和 status 屬性一樣,當 readyState 小於 3 的時候讀取這一屬性會導致一個異常。

 

         XMLHttprequest對象的方法

         1.open方法

         描述:制定和伺服器互動的HTTP方法,URL地址及其他請求資訊。

         open(method,url, async, username, password) 用來進行初始化工作

         返回值:得到一個包含send()方法的對象

         method:必須。用於指定HTTP要求方法,支援所有HTTP的方法,如GET,POST,按規定

         uri:請求的伺服器的地址,自動解析成絕對位址。

         async:請求是否非同步,true表示你非同步,false表示同步,預設為true。

         username,password:可以不指定,分別表示使用者名稱和密碼,提供HTTP認證機制需要的使用者名稱和密碼。

         調用open後,readystate狀態為1. 

         2.send(content)方法

         描述:向伺服器發出請求,其內容可以是DOM對象,輸入資料流或是字串。

         調用open 方法後,可以調用send()方法來發送請求。

         當open 中async=true時,send()方法調用後立即返回,否則會中斷直到請求返回。

         3.abort()方法

         該方法可以暫停一個HttpRequest請求或者HttpResponse的接收,並且將XMLHttpRequest的狀態設定為初始化。

         4.setRequestHeader(header,value)方法

         該方法用來佈建要求的頭部資訊。此方法需要在open方法之後調用。

         5.getResponseHeader()方法

         描述:返回包含HTTP的所有回應標頭資訊,其中回應標頭包括Content-Length,Date,URI等內容。

         當readystate>2時,該方法用來檢索響應的頭部資訊。否則返回一個Null 字元串。

         getAllResponseHeaders()方法返回所有的HttpResponse頭部資訊。

 

         知道的XMLHttpRequest對象的相關知識之後,重點就是如何使用了,敬請關注我的下篇部落格《AJAX入門---五步使用XMLHttpRequest對象》

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.