1.提出者:jesse james garrett
2.ie中,xhr是通過activex對象實作的。涉及浏覽器的相容性寫法。
3.使用
<1>open("請求方式","請求的url",“同步還是異步”)
<2>send("作為請求主體發送的資料") 如果不需要,則必須傳入null。
<3>responsetext() 作為響應主體被傳回的文本,還有一個responsexml
<4>status 響應的http狀态
<5>statustext http狀态的說明
4.readystate
隻要readystate由一個值變為另外一個值,都會觸發onreadystatechange事件處理程式。為了確定相容性,應該在open之前調用onreadystatechange。有請求也就可以取消請求,使用xhr.abort()即可。
5.http的頭資訊
6.get請求
使用get請求經常會發生一個錯誤,就是差查詢字元串的格式有問題。查詢字元串中每個參數的名稱和值都必須使用encodeuricomponent()進行編碼,然後才能放到url的末尾。
blob對象:是一個二進制對象,如圖檔等
7.xmlhttprequest 2級
<1>formdata
為表單的序列化以及建立與表單格式相同的資料提供了便利。
<2>逾時設定
請求逾時執行回調:xhr.timeout=function(){}
<3>overridemimetype()
重寫xhr響應的mime類型
<4>進度事件
<5>load事件
<6>progress事件
8.執行個體示範:
js:


結果:
請求與響應的資訊:
改成post請求後:
2015-10-31 start
9.xhr中,post與get的簡單對比
不會改變伺服器狀态,隻擷取資料(被稱為“幂等行為”)的請求,使用get。經過get請求的資料會被緩存,多次請求的話,有助于提升性能。
由于浏覽器對url的長度限制,使用較長url會被截斷。使用post。
2015-10-31 end
轉載:http://www.cnblogs.com/zqzjs/p/4912623.html