HTTP請求和Ajax的學習


1、無記憶的請求,請求結束后不會保留請求的記憶

2、HTTP請求過程

1、建立TCP連接
2、Web瀏覽器向服務器發送請求命令
3、Web瀏覽器發送請求頭信息
4、Web服務器應答
5、Web服務器發送應答頭信息
6、Web服務器想瀏覽器發送數據
7、Web服務器關閉TCP連接

3、HTTP請求

GET請求:一般用於信息獲取
        使用url傳遞參數
        對發送的信息的數量有限制,一般在2000字符
        冪等:每次只是GET,沒有修改服務器上的信息     

POST請求:一般用於修改服務器上的資源
         對發送的信息的數量無限制

4、HTTP相應

1、數字和文字組成的狀態嗎,顯示請求是成功還是失敗。客戶端不知道請求的成功
2、響應頭:和請求頭一樣包含服務端的信息,如服務器類型,內容類型和長度
3、相應正文

5、HTTP狀態碼

1XX:信息類,表示收到Web瀏覽器的請求,處理中;
2XX:成功:表示用戶請求被正確接收,理解和處理  200 OK
3XX: 重定向:表示請求沒有成功,客戶要采取進一步動作
4XX:客戶端錯誤,表示客戶端提交的請求有錯誤。 404 NOTFound,意味着請求中引用的文檔不存在    
5XX:服務器錯誤,表示服務器不能完成對請求的處理  500

6、簡單的例子

request.open('GET','get.php',true);
request.send();

request.open('POST','post.php',true);
request.send();


request.open('POST','create.php',true);
request.setRequestHeader('Context-type','application/x-www-form-urlencoded');
request.send("name=王二狗&sex=男");
//用於提交表單,setRequestHeader放在open和send中

7、XMLHttpRequest取得響應

responseText:獲得字符串形式的響應數據
responseXML:獲得XML形式的響應數據
status和statusText:以數字和文本形式返回HTTP狀態碼
getAllResponseHeader():獲取所有的響應報頭
getResponseHeader():獲取響應中某個字段的值
readyState屬性
0:請求未初始化,open還沒有調用
1:服務器連接已建立,open已經調用了
2:請求已接收,接收到頭信息了
3:請求處理中,接收到響應主體了
4:請求已完成,且響應已就緒,響應完成了
var request = new XMLHttpRequest();
request.open('GET','get.php',true);
request.send();
request.onreadyState() = function() {
if(request.readyState === 4 && request.status ===200){
    //do sth    
}
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM