Http協議中get和post的區別


  • get(默認值)是通過URL傳遞表單值,數據追加在action屬性后面。
  • post傳遞的表單值是隱藏到http報文體中,url中看不到。
  • get是通過url傳遞表單值,post通過url看不到表單域的值;
  • get傳遞的數據量是有限的,如果要傳遞大數據量不能用get,比如type=“file”上傳文章、type=“password”傳遞密碼或者<textarea>發表大段文章,post則沒有這個限制。
  • post區別:網址隱藏;只要當前頁面請求是POST請求,那么刷新就是重新發出POST,部分瀏覽器會提示“是否重復提交”。
  • 只要在地址欄中輸入一個網址回車訪問,那么就是GET。精確到具體網頁

數據格式。服務端文件名后跟着“?”,由於客戶端可能向服務器端提交多個鍵值對,鍵值對之間用“&”進行分割,如果URL中有漢字、特殊符號等,則需要對URL進行編碼。

 

Http協議定義了很多與服務器交互的方法,最基本的有4種,分別是GET,POST,PUT,DELETE. 一個URL地址用於描述一個網絡上的資源,而HTTP中的GET, POST, PUT, DELETE就對應着對這個資源的查,改,增,刪4個操作。 我們最常見的就是GET和POST了。GET一般用於獲取/查詢資源信息,而POST一般用於更新資源信息.

我們看看GET和POST的區別

1. GET提交的數據會放在URL之后,以?分割URL和傳輸數據,參數之間以&相連,如EditPosts.aspx?name=test1&id=123456.(注意對於用戶登錄來說,get是不安全的,網頁直接顯示你的用戶名和密碼) POST方法是把提交的數據放在HTTP包的Body中.

2. GET提交的數據大小有限制(因為瀏覽器對URL的長度有限制),而POST方法提交的數據沒有限制.

3. GET方式需要使用Request.QueryString來取得變量的值,而POST方式通過Request.Form來獲取變量的值。

4. GET方式提交數據,會帶來安全問題,比如一個登錄頁面,通過GET方式提交數據時,用戶名和密碼將出現在URL上,如果頁面可以被緩存或者其他人可以訪問這台機器,就可以從歷史記錄獲得該用戶的賬號和密碼.


免責聲明!

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



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