JQuery $.ajax 捕獲異常信息

轉(zhuǎn)自http://blog.csdn.net/wenle006/article/details/7022240

一、error:
error:function (XMLHttpRequest, textStatus, errorThrown) 
{ 
} 

(默認(rèn): 自動(dòng)判斷 (xml 或 html)) 請(qǐng)求失敗時(shí)調(diào)用時(shí)間。參數(shù)有以下三個(gè):XMLHttpRequest 對(duì)象、錯(cuò)誤信息、(可選)捕獲的錯(cuò)誤對(duì)象、XMLResponse對(duì)象。如果發(fā)生了錯(cuò)誤,錯(cuò)誤信息(第二個(gè)參數(shù))除了得到null之外,還可能是"timeout", "error", "notmodified" 和 "parsererror"。

  • textStatus:

"timeout", "error", "notmodified" 和 "parsererror"。

二、error事件返回的第一個(gè)參數(shù)XMLHttpRequest有一些有用的信息:
  • XMLHttpRequest.readyState:

狀態(tài)碼

0 - (未初始化)還沒(méi)有調(diào)用send()方法
1 - (載入)已調(diào)用send()方法,正在發(fā)送請(qǐng)求
2 - (載入完成)send()方法執(zhí)行完成,已經(jīng)接收到全部響應(yīng)內(nèi)容
3 - (交互)正在解析響應(yīng)內(nèi)容
4 - (完成)響應(yīng)內(nèi)容解析完成,可以在客戶端調(diào)用了

三、data:"{}", data為空也一定要傳"{}";不然返回的是xml格式的。并提示parsererror.
四、parsererror的異常和Header 類型也有關(guān)系。及編碼header('Content-type: text/html; charset=utf8');

eg:python cgi+js:
前端調(diào)用python 已經(jīng)print result了,但是前端并沒(méi)有收到,依然pendding,一直是Provisional headers are shown,當(dāng)結(jié)束進(jìn)程時(shí),前端返回200,此時(shí)會(huì)把之前的result打印出來(lái)并附帶了cgi的頭,如下:導(dǎo)致textStatus為parsererror

{"msg": "excute plan done", "retcode": "success"}
Content-type: text/plain

可以使用:chrome://net-internals/#events查看問(wèn)題

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容