Ajax傳送非同步請求(四步操作)

2021-08-06 03:42:35 字數 2568 閱讀 4941

*ajax其實只需要學習乙個物件:xmlhttprequest,如果掌握了 它,就掌握了ajax。

*得到xmlhttprequest

===>大多數瀏覽器支援:var xmlhttp = new xmlhttprequest();

*編寫建立xmlhttprequest(非同步物件)物件的函式

}*xmlhttp.open():用來開啟與伺服器的連線,它需要三個引數:

===>請求方式:可以是get或post

===>請求的url:指定服務端資源:例如/demo/aservlet

===>請求是否為非同步:如果為true代表傳送非同步請求,否則同步請求。

xmlhttp.open("post","/demo/aservlet",true);*xmlhttp.send(null):如果不給null可能會造成部分瀏覽器無法傳送!

===>引數:就是請求體內容!如果是get請求,必須給出null。

如果傳送時帶有引數一般使用post請求

===>如果是post請求

1.設定content-type請求頭:

*在xmlhttp物件的乙個事件上註冊***:onreadystatechange

*xmlhttp物件一共有5個狀態:

===>0狀態:剛建立xmhttp物件,還沒有呼叫open()方法;

===>1狀態:請求開始,還沒有呼叫send()方法;

===>2狀態:呼叫完了send()方法;

===>3狀態:伺服器開始響應,但不表示響應結束;

===>4狀態:伺服器響應結束;(通常我們只關心這個狀態!)

*得到xmlhttp物件的狀態:

==>

//state可能是0,1,2,3,4

var stata = xmlhttp.readystate;

*得到伺服器響應的狀態碼:

==>

//例如為200,404,500

var stata = xmlhttp.status;

*得到伺服器響應的內容:

==>

//得到伺服器響應的文字格式的內容

//得到伺服器響應的xml響應的內容,它是document物件

var content = xmlhttp.respon***ml;

//當狀態改變時會呼叫該方法

()}

//對於不同的瀏覽器 建立不同的xmlhttprequest物件

* object的引數

* method-->可選

* url

* async-->可選

* params-->可選

* type-->可選

* callback

* object是乙個json

*///呼叫該方法時需要建立乙個json物件來進行呼叫

XMLHTTP對像 非同步請求四步曲

xmlhttp請求可以同步,也可以非同步。同步請求的send 方法僅當請求完成時才會返回,非同步請求的send 方法立即返回。為了檢視乙個非同步請求是否完成,需要檢查其readystate。基於mozilla的瀏覽器建立乙個xmlhttp物件,使用xmlhttprequest來構造。在ie瀏覽器中,...

ajax傳送非同步請求的步驟

1.第一步 得到xmlhttprequest ajax要學習乙個物件 xmlhttprequest 編寫建立xmlhttprequest物件的函式 得到xmlhttprequest 2.第二步 開啟與伺服器的連線 xmlhttp.open 用來開啟與伺服器的連線,它需要三個引數 請求方式 可以是ge...

非同步請求響應操作流程(AJAX)

1.0 ajax開發流程 1.獲得當前瀏覽器中內嵌的 物件 2.物件 進行初始化 3.通知 物件 傳送非同步請求 4.對 物件 的 工作狀態 進行 實時監控 決定最佳獲取 物件 中資料的時機。5.將獲得資料,更新到瀏覽中指定控制項上,實現 區域性重新整理 2.0 物件 的 工作狀態 1.工作狀態 有...