ajax請求步驟 和 簡易封裝

2021-10-05 05:00:40 字數 1884 閱讀 6534

建立非同步物件

var xhr =

;

設定 請求行 open(請求方式,請求url)
// get請求如果有引數就需要在url後面拼接引數,

xhr.

open

("get"

,"validate.php?username="

+name)

// post如果有引數,就在請求體中傳遞

xhr.

open

("post"

,"validate.php"

);

設定請求(get方式忽略此步驟)頭:setrequestheader()
// 1.get不需要設定

xhr.

setrequestheader

("content-type",)

;

設定請求體 send()
// 1.get的引數在url拼接了,所以不需要在這個函式中設定

xhr.

send

(null

)// 2.post的引數在這個函式中設定(如果有引數)

xhr.

send

("username="

+name)

;

讓非同步物件接收伺服器的響應資料
// 乙個成功的響應有兩個條件:1.伺服器成功響應了 2.非同步物件的響應狀態為4(資料解析完畢可以使用了)

xhr.

onreadystatechange

=function()

簡易封裝

function

getsend

(url,callback)};

xhr.

send()

;}getsend

("",(res)

=>

)// promise形式

function

pgetsend

(url)

else};

xhr.

send()

;})}

pgetsend

("").

then

(res=>

)

$.

ajax(,

//請求的引數

datatype:

"json"

,//json寫了jq會幫我們轉換成陣列或者物件 他已經用json.parse弄好了

timeout:

3000

,//3秒後提示錯誤

beforesend:

function()

, success:

function

(data)

, error:

function()

, complete:

function()

})// 常用

$.ajax(,

datatype:

"json"

, success:

function

(data)

})

$.ajax() 都可以發

$.post(url,data,success,datatype):本質上只能傳送post請求

$.get(url,data,success,datatype):本質上只能傳送get請求

封裝ajax請求

封裝ajax請求 把get請求和post請求封裝成乙個函式 我們需要傳送請求的時候直接低啊用 因為get和post請求引數是不一樣的 封裝成兩個函式 乙個叫做getsend 乙個叫做postsend 1 寫一遍完整流程 2 把步驟封裝起來就可以了function getsend url,cb 1 建...

ajax請求封裝

對封裝好的ajax請求進行呼叫 ajax 請求引數 datatype json 返回值型別的設定 async false,是否非同步 success function response,xml fail function status function ajax options 預設為get請求 o...

ajax請求步驟

ajax 頁面無重新整理讀取伺服器資料 get 通過瀏覽器位址列傳輸資料 get傳輸資料小 安全性較低 有快取 post 通過http內部傳輸資料 容量較大,一般可達2g 安全性相對較高 無快取 1.建立乙個ajax物件 主流瀏覽器 ie7以下低版本瀏覽器 2.連線到伺服器 oajax.open g...