国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【全棧之路】JAVA基礎(chǔ)課程七_(dá)AJAX原理剖析(20190617v1.0)

biaoxiaoduan / 2357人閱讀

摘要:借鑒圖片僅用于學(xué)習(xí)分享,請尊重原創(chuàng)作者,勿用于商用。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請求數(shù)據(jù)。基本步驟創(chuàng)建對象也就是創(chuàng)建一個異步調(diào)用對象。創(chuàng)建一個新的請求并指定該請求的方法及驗證信息。設(shè)置響應(yīng)請求狀態(tài)變化的函數(shù)。使用和實現(xiàn)局部刷新。

歡迎進(jìn)入JAVA基礎(chǔ)課程

博客地址:https://blog.csdn.net/houjiyu...
本系列文章將主要針對JAVA一些基礎(chǔ)知識點進(jìn)行講解,為平時歸納所總結(jié),不管是剛接觸JAVA開發(fā)菜鳥還是業(yè)界資深人士,都希望對廣大同行帶來一些幫助。若有問題請及時留言或加QQ:243042162。

寄語:
"不深思而得者,其得易失",這句話告誡我們在學(xué)習(xí)原理的同時,要在深入思考上下功夫,要在融會貫通上下功夫,要做到既知其言又知其義、既知其然有知其所以然,要在知行合一上下功夫,要做到學(xué)以致用、用有所成。
概述

本文借鑒網(wǎng)絡(luò)上各技術(shù)博客,抽取出一些非常實用的解析圖,便于讀者融會貫通。借鑒圖片僅用于學(xué)習(xí)分享,請尊重原創(chuàng)作者,勿用于商用。

什么是AJAX

Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)

Ajax是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術(shù)

與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,實現(xiàn)網(wǎng)頁異步和局部刷新

原理剖析

Ajax 的原理簡單來說通過 XmlHttpRequest 對象來向服務(wù)器發(fā)異步請求,從服務(wù)器獲得數(shù)據(jù),然后用 javascript 來操作 DOM 而更新頁面。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請求數(shù)據(jù)。

基本步驟:
(1) 創(chuàng)建XMLHttpRequest對象,也就是創(chuàng)建一個異步調(diào)用對象。
(2) 創(chuàng)建一個新的HTTP請求,并指定該HTTP請求的方法、URL及驗證信息。
(3) 設(shè)置響應(yīng)HTTP請求狀態(tài)變化的函數(shù)。
(4) 發(fā)送HTTP請求。
(5) 獲取異步調(diào)用返回的數(shù)據(jù)。
(6) 使用JavaScript和DOM實現(xiàn)局部刷新。
原理圖

Ajax核心:XMLHttpRequest

對象屬性
readyState:請求狀態(tài),開始請求時值為0直到請求完成這個值增長到4
responseText:目前為止接收到的響應(yīng)體,readyState<3此屬性為空字符串,=3為當(dāng)前響應(yīng)體,=4則為完整響應(yīng)體
responseXML:服務(wù)器端相應(yīng),解析為xml并作為Document對象返回
status:服務(wù)器端返回的狀態(tài)碼,=200成功,=404表示“Not Found”
statusText:用名稱表示的服務(wù)器端返回狀態(tài),對于“OK”為200,“Not Found”為400

方法
setRequestHeader():向一個打開但是未發(fā)生的請求設(shè)置頭信息
open():初始化請求參數(shù)但是不發(fā)送
send():發(fā)送Http請求
abort():取消當(dāng)前相應(yīng)
getAllResponseHeaders():把http相應(yīng)頭作為未解析的字符串返回
getResponseHeader():返回http相應(yīng)頭的值

事件句柄
onreadystatechange:每次readyState改變時調(diào)用該事件句柄,但是當(dāng)readyState=3有可能調(diào)用多次

狀態(tài)圖

狀態(tài)碼

1. readyState
0:初始化,XMLHttpRequest對象還沒有完成初始化
1:載入,XMLHttpRequest對象開始發(fā)送請求
2:載入完成,XMLHttpRequest對象的請求發(fā)送完成
3:解析,XMLHttpRequest對象開始讀取服務(wù)器的響應(yīng)
4:完成,XMLHttpRequest對象讀取服務(wù)器響應(yīng)結(jié)束
2. status
1xx:信息響應(yīng)類,表示接收到請求并且繼續(xù)處理
2xx:處理成功響應(yīng)類,表示動作被成功接收、理解和接受
3xx:重定向響應(yīng)類,為了完成指定的動作,必須接受進(jìn)一步處理
4xx:客戶端錯誤,客戶請求包含語法錯誤或者是不能正確執(zhí)行
5xx:服務(wù)端錯誤,服務(wù)器不能正確執(zhí)行一個正確的請求

100——客戶必須繼續(xù)發(fā)出請求
101——客戶要求服務(wù)器根據(jù)請求轉(zhuǎn)換HTTP協(xié)議版本
200——交易成功
201——提示知道新文件的URL
202——接受和處理、但處理未完成
203——返回信息不確定或不完整
204——請求收到,但返回信息為空
205——服務(wù)器完成了請求,用戶代理必須復(fù)位當(dāng)前已經(jīng)瀏覽過的文件
206——服務(wù)器已經(jīng)完成了部分用戶的GET請求
300——請求的資源可在多處得到
301——刪除請求數(shù)據(jù)
302——在其他地址發(fā)現(xiàn)了請求數(shù)據(jù)
303——建議客戶訪問其他URL或訪問方式
304——客戶端已經(jīng)執(zhí)行了GET,但文件未變化
305——請求的資源必須從服務(wù)器指定的地址得到
306——前一版本HTTP中使用的代碼,現(xiàn)行版本中不再使用
307——申明請求的資源臨時性刪除
400——錯誤請求,如語法錯誤
401——請求授權(quán)失敗
402——保留有效ChargeTo頭響應(yīng)
403——請求不允許
404——沒有發(fā)現(xiàn)文件、查詢或URl
405——用戶在Request-Line字段定義的方法不允許
406——根據(jù)用戶發(fā)送的Accept拖,請求資源不可訪問
407——類似401,用戶必須首先在代理服務(wù)器上得到授權(quán)
408——客戶端沒有在用戶指定的餓時間內(nèi)完成請求
409——對當(dāng)前資源狀態(tài),請求不能完成
410——服務(wù)器上不再有此資源且無進(jìn)一步的參考地址
411——服務(wù)器拒絕用戶定義的Content-Length屬性請求
412——一個或多個請求頭字段在當(dāng)前請求中錯誤
413——請求的資源大于服務(wù)器允許的大小
414——請求的資源URL長于服務(wù)器允許的長度
415——請求資源不支持請求項目格式
416——請求中包含Range請求頭字段,在當(dāng)前請求資源范圍內(nèi)沒有range指示值,請求也不包含If-Range請求頭字段
417——服務(wù)器不滿足請求Expect頭字段指定的期望值,如果是代理服務(wù)器,可能是下一級服務(wù)器不能滿足請求
500——服務(wù)器產(chǎn)生內(nèi)部錯誤
501——服務(wù)器不支持請求的函數(shù)
502——服務(wù)器暫時不可用,有時是為了防止發(fā)生系統(tǒng)過載
503——服務(wù)器過載或暫停維修
504——關(guān)口過載,服務(wù)器使用另一個關(guān)口或服務(wù)來響應(yīng)用戶,等待時間設(shè)定值較長
505——服務(wù)器不支持或拒絕支請求頭中指定的HTTP版本

代碼實現(xiàn)

前臺代碼

var xmlHttp = new XMLHttpRequest();

xmlHttp.open("post","/loginTest",true);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
xmlHttp.send("username=rain&password=123456");

xmlHttp.onreadystatechange = function (){
    var state = xmlHttp.readyState;
    var status = xmlHttp.status;
    if(state == 4 && status == 200){
        var data=xmlHttp.responseText;
       console.log("1."+data);
    }
}

xmlHttp.onload=function () {
    console.log("2."+xmlHttp.responseText);

}

后臺代碼

 @RequestMapping(value = "/loginTest", method = RequestMethod.POST)
    @ResponseBody
    public String loginTest(HttpServletRequest rq, String username, String password) {

        System.out.println("username="+username+";password="+password);

        System.out.println("username="+rq.getParameter("username")+";password="+rq.getParameter("password"));

        return "成功啦";
    }

輸出結(jié)果

1."成功啦"
2."成功啦"

參考網(wǎng)站:
(1)http://www.sohu.com/a/2382462...
(2)https://www.cnblogs.com/jacks...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/77809.html

相關(guān)文章

  • 全棧之路JAVA基礎(chǔ)課程_AJAX原理剖析20190617v1.0

    摘要:借鑒圖片僅用于學(xué)習(xí)分享,請尊重原創(chuàng)作者,勿用于商用。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請求數(shù)據(jù)?;静襟E創(chuàng)建對象也就是創(chuàng)建一個異步調(diào)用對象。創(chuàng)建一個新的請求并指定該請求的方法及驗證信息。設(shè)置響應(yīng)請求狀態(tài)變化的函數(shù)。使用和實現(xiàn)局部刷新。 歡迎進(jìn)入JAVA基礎(chǔ)課程 博客地址:https://blog.csdn.net/houjiyu...本系列文章將主要針對JAVA一些基礎(chǔ)知識點進(jìn)行講解...

    yintaolaowanzi 評論0 收藏0
  • 全棧之路JAVA基礎(chǔ)課程_數(shù)據(jù)類型和垃圾回收機制(20190611v1.0

    摘要:,用于調(diào)用垃圾收集器,在調(diào)用時,垃圾收集器將運行以回收未使用的內(nèi)存空間。然而調(diào)用附帶一個免責(zé)聲明,無法保證對垃圾收集器的調(diào)用。所以并不能說是完美主動進(jìn)行了垃圾回收。 歡迎進(jìn)入JAVA基礎(chǔ)課程 博客地址:https://blog.csdn.net/houjiyu...本系列文章將主要針對JAVA一些基礎(chǔ)知識點進(jìn)行講解,為平時歸納所總結(jié),不管是剛接觸JAVA開發(fā)菜鳥還是業(yè)界資深人士,都希...

    big_cat 評論0 收藏0
  • 全棧之路JAVA基礎(chǔ)課程_Mysql事物隔離級別(20190624v1.0

    摘要:注意不僅可以控制事務(wù)傳播行為等,還可以控制事務(wù)隔離級別等。事物的隔離級別隔離級別越高,并發(fā)性能越低。在的隔離級別下,會出現(xiàn)幻讀的問題??纱谢亲罡叩母綦x級別。 歡迎進(jìn)入JAVA基礎(chǔ)課程 博客地址:https://mp.csdn.net/mdeditor/...本系列文章將主要針對JAVA一些基礎(chǔ)知識點進(jìn)行講解,為平時歸納所總結(jié),不管是剛接觸JAVA開發(fā)菜鳥還是業(yè)界資深人士,都希望對...

    niuxiaowei111 評論0 收藏0
  • 全棧之路JAVA基礎(chǔ)課程_Mysql事物隔離級別(20190624v1.0

    摘要:注意不僅可以控制事務(wù)傳播行為等,還可以控制事務(wù)隔離級別等。事物的隔離級別隔離級別越高,并發(fā)性能越低。在的隔離級別下,會出現(xiàn)幻讀的問題??纱谢亲罡叩母綦x級別。 歡迎進(jìn)入JAVA基礎(chǔ)課程 博客地址:https://mp.csdn.net/mdeditor/...本系列文章將主要針對JAVA一些基礎(chǔ)知識點進(jìn)行講解,為平時歸納所總結(jié),不管是剛接觸JAVA開發(fā)菜鳥還是業(yè)界資深人士,都希望對...

    twohappy 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<