站長資訊網
最全最豐富的資訊網站

ajax請求時post和get的區別是什么

區別:1、get把參數數據隊列加到提交表單的ACTION屬性所指的URL中,而post是通過“HTTP post”機制,將表單內各個字段與其內容放置在“HTML HEADER”內一起傳送到ACTION屬性所指的URL地址;2、get方式,服務器端用“Request.QueryString”獲取變量的值,對于post方式,服務器端用“Request.Form”獲取提交的數據。

ajax請求時post和get的區別是什么

本文操作環境:windows10系統、javascript1.8.5&&html5版、Dell G3電腦。

ajax請求時post和get的區別是什么

1、 get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個字段一一對應,在URL中可以看到。post是通過HTTP post機制,將表單內各個字段與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。

2、 對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數據。兩種方式的參數都可以用Request來獲得。

3、get傳送的數據量較小,不能大于2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,因服務器的不同而異.

4、get安全性非常低,post安全性較高。

5、跟是一樣的,也就是說,action頁面后邊帶的參數列表會被忽視;而跟是不一樣的。

另外

Get請求有如下特性:它會將數據添加到URL中,通過這種方式傳遞到服務器,通常利用一個問號?代表URL地址的結尾與數據參數的開端,后面的參數每一個數據參數以“名稱=值”的形式出現,參數與參數之間利用一個連接符&來區分。

Post請求有如下特性:數據是放在HTTP主體中的,其組織方式不只一種,有&連接方式,也有分割符方式,可隱藏參數,傳遞大批數據,比較方便。

總而言之:當我們在提交表單的時候我們通常用post方式,當我們要傳送一個較大的數據文件時,需要用post。當傳遞的值只需用參數方式(這個值不大于2KB)的時候,用get方式即可。

所以對于ajax提交兩者用法自然就明了了。

擴展知識:

那么如何選擇get和post呢?

get請求的目的是給予服務器一些參數,以便從服務器獲取列表.例如:list.aspx?page=1,表示獲取第一頁的數據

  • 如果調用是要檢索服務器上的數據則使用get,另外需要注意的是,如果要檢索的值會隨時間和更新進程的改變而改變,則要在get調用中添加一個隨機數或者時間戳,這樣后面的調用才不會使用先前的不正確的緩存。與post相比,get更簡單也更快,并且在大部分情況下都能用。

post請求的目的是向服務器發送一些參數

  • 無法使用緩存文件(更新服務器上的文件或數據庫),使用post

  • 向服務器發送大量數據(post沒有數據量限制),使用post

  • 發送包含未知字符的用戶輸入時,post比get更穩定也更可靠

我們知道get的目的就如同其名字一樣是用于獲取信息的。它旨在顯示出頁面上你要閱讀的信息。瀏覽器會緩沖get請求的執行結果,如果同樣的get請求再次發出,瀏覽器就會顯示緩沖的結果而不是重新運行整個請求。這一流程不同于瀏覽器的處理過程,但是它是有意設計成這樣,使get調用更有效率。get調用會檢索要顯示在頁面中的數據,數據不會再服務器上被更改,因此重新請求相同數據的時候會得到相同的結果。

post方法應該用于需要更新服務器信息的地方。如某調用要更改保存在服務器上的數據,而從兩個同樣的post調用返回的結果或許會完全不同,因為第二個post調用的值與第一個的值不相同,這是由于第一個調用已經更新了其中一些值。post調用通常會從服務器上獲取響應而不是保持前一個響應的緩存。

get請求

oBtn.onclick = function() { var xhr = null; try { xhr = new XMLHttpRequest(); } catch (e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } /* 1.緩存 在url?后面連接一個隨機數,時間戳 2.亂碼 編碼encodeURI */ xhr.open('get','2.get.php?username='+encodeURI('劉偉')+'&age=30&' + new Date().getTime(),true); xhr.send(); xhr.onreadystatechange = function() { if ( xhr.readyState == 4 ) { if ( xhr.status == 200 ) { alert( xhr.responseText ); } else { alert('出錯了,Err:' + xhr.status); } } } }

post請求

oBtn.onclick = function() { var xhr = null; try { xhr = new XMLHttpRequest(); } catch (e) { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } xhr.open('post','2.post.php',true); //post方式,數據放在send()里面作為參數傳遞 xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');//申明發送的數據類型 //post沒有緩存問題 //無需編碼 xhr.send('username=劉偉&age=30'); xhr.onreadystatechange = function() { if ( xhr.readyState == 4 ) { if ( xhr.status == 200 ) { alert( xhr.responseText ); } else { alert('出錯了,Err:' + xhr.status); } } } }

【相關教程推薦:AJAX視頻教程】

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久热爱精品视频在线| 91精品久久久久久久99蜜桃| 亚洲日韩中文字幕| 国内一级特黄女人精品毛片| 精品国产a∨无码一区二区三区| 亚洲国产精品福利片在线观看| 中文国产成人精品久久96| 日韩一区在线视频| 亚洲日韩国产精品第一页一区| 国产精品美女自在线观看免费| 人妻互换精品一区二区| 2022国产精品福利在线观看| 亚洲国产精品美女| 91麻豆精品国产片在线观看| 亚洲精品私拍国产福利在线| 国产精品乱码高清在线观看| 9久久9久久精品| 国内精品国产成人国产三级| 国产精品无码国模私拍视频| 伊在人亚洲香蕉精品区麻豆| 在线观看亚洲AV日韩AV| 国产日韩精品一区二区三区在线| 国产精品久免费的黄网站| 在线观看精品国产福利片87 | 日本亚洲精品色婷婷在线影院| 久久九九精品99国产精品| 亚洲精品在线观看视频| 久久九九精品国产综合喷水 | 精品国产一区二区三区麻豆| 久久精品亚洲中文字幕无码麻豆| 无码精品人妻一区二区三区漫画| 国产精品va无码一区二区| 久久精品国产一区| 久久亚洲国产精品一区二区| 久久精品国产秦先生| 久久99精品国产一区二区三区| 亚洲乱码精品久久久久..| 日本精品一区二区三区在线观看| 国产AV无码专区亚洲精品| 久章草在线精品视频免费观看| 久久久999国产精品|