小編給大家分享一下HTTP報文及ajax基礎知識的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
HTTP報文
客戶端傳遞給服務器的內(nèi)容 和 服務器傳遞給客戶端的內(nèi)容 都屬于HTTP報文
起始行:請求起始行 響應起始行
首部:請求首部 響應首部 通用首部(請求和響應都有的) 自定義首部
主體:請求主體 響應主體
客戶端傳遞給服務器端數(shù)據(jù):
請求URL后面問號傳參的方式傳遞給服務器 /getList?name=zhangsan&age=7
設置請求的首部(設置請求頭信息)
設置請求主體,把傳遞給服務器的內(nèi)容放在請求主體中傳遞給服務器
服務器端傳遞給客戶端數(shù)據(jù):
設置響應頭信息
設置響應主體內(nèi)容
Ajax : async javascript and xml 異步的JS和XML(可擴展的標記語言,在XML文件中使用的標簽都是自己擴展的,利用自己擴展的有規(guī)則的標記來存儲相關的數(shù)據(jù))
Ajax是客戶端JS中的方法,用來向服務端發(fā)送請求(還可以傳遞給服務器端數(shù)據(jù)),然后把服務器端返回的內(nèi)容獲取到(Ajax一般是運行在客戶端的瀏覽器中的)。
Ajax四步:
創(chuàng)建一個Ajax對象(下面的這種寫法在IE6及更低版本的瀏覽器中不支持)
var xhr = new XMLHttpRequest;
發(fā)送前的基本信息配置:配置請求方式(GET、POST、PUT、DELETE、HEAD...)
打開一個URL地址(配置向哪一個服務器地址發(fā)送請求)
同步還是異步(true代表異步 false代表同步 默認是true)
[username]向服務器提供請求的用戶名
[userpass]向服務器提供請求的用戶密碼,這兩個值一般都不寫,只有服務器做了安全的限制,只允許特定的用戶訪問的話,我們才傳遞過去
xhr.open('get',"/data.txt",false,[username],[userpass]);
給onreadystatechange這個事件綁定一個方法,監(jiān)聽狀態(tài)的改變(只要狀態(tài)改變,就觸發(fā)方法執(zhí)行)
xhr.onreadystatechange = function(){
xhr.readyState:AJAX狀態(tài)碼,可以代表當前處理的進度
0 unset 當前的請求還沒有發(fā)送
1 opened URL地址已經(jīng)打開(發(fā)送前的參數(shù)配置已經(jīng)完成)
2 headers_received 響應頭信息已經(jīng)接受
3 loading 主要返回的內(nèi)容正在服務器端進行準備處理
4 done 響應主體的內(nèi)容已經(jīng)成功返回給客戶端
xhr.status:HTTP網(wǎng)絡狀態(tài)碼,描述了服務器響應內(nèi)容的狀態(tài)
200 OR ^2\d{2} (200或者以2開頭) -> 都代表響應主體的內(nèi)容已經(jīng)成功返回了
301 永久重定向/永久轉移
302 臨時重定向/臨時轉移 服務器的負載均衡
304 本次獲取的內(nèi)容是讀取緩存中的數(shù)據(jù)
400 客戶端傳遞給服務器端的參數(shù)出現(xiàn)錯誤
401 無權限訪問
404 客戶端訪問的地址不存在
500 未知的服務器錯誤
503 服務器已經(jīng)超負荷
if(xhr.readyState===4 && /^2\d{2}$/.test(xhr.status)){ var val = xhr.responseText; } }
發(fā)送請求:參數(shù)是請求主體中傳遞給服務器的內(nèi)容
xhr.send(null);
以上是“HTTP報文及ajax基礎知識的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享文章:HTTP報文及ajax基礎知識的示例分析-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://jinyejixie.com/article40/dseeeo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google、云服務器、外貿(mào)建站、響應式網(wǎng)站、品牌網(wǎng)站建設、手機網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容