前端學(xué)了有一段時(shí)間了,在項(xiàng)目中我通常使用的都是jQuery封裝好的Ajax函數(shù)($.ajax、$.get、$.post),使用非常的簡單方便,但為了更清楚的了解Ajax,需要學(xué)習(xí)原生xhr對(duì)象。
先來明確什么是Ajax,Ajax:“Asynchronous JavaScript and XML”,翻譯過來就是異步JavaScript和XML。
Ajax是一種用于創(chuàng)建快速動(dòng)態(tài)網(wǎng)頁的技術(shù),通過在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX可以使網(wǎng)頁實(shí)現(xiàn)異步更新。意味這可以再不重新加載整個(gè)網(wǎng)頁的情況下,對(duì)網(wǎng)頁的某部分進(jìn)行更新。
創(chuàng)建Ajax:
要?jiǎng)?chuàng)建Ajax,主角是XMLHttpRequest(下簡稱XHR)對(duì)象。
第一步:創(chuàng)建XHR對(duì)象
var xhr = new XMLHttpRequest();
第二步:向服務(wù)器發(fā)送請(qǐng)求
方法:open(method,url,async) 和 send(string)
open()方法傳入三參數(shù)
method:請(qǐng)求的類型(GET/POST)
url:文件在服務(wù)器上的位置
async:布爾值,true表示異步,false表示同步(可選,默認(rèn)為true)
send()方法將請(qǐng)求發(fā)送到服務(wù)器,有一個(gè)可選的參數(shù)string,僅用于POST類型的請(qǐng)求。