get和post有什么區別


提交方式post和get有什么區別?

(1)post是向服務器傳送數據;get是從服務器上獲取數據。

(2)在客戶端,get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個字段一一對應,在URL中可以看到。

post是通過HTTP post機制,將表單內各個字段與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。

(3)對於get方式,服務器端用Request.QueryString獲取變量的值,對於post方式,服務器端用Request.Form獲取提交的數據。

例如:get 提交Request.QueryString["aa"].ToString();

post 提交用 Request.Form["aa"].ToString();

(4)get可以傳送的數據量則非常小,只能有1024字節,不能大於2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。

(5)安全性問題。正如在(1)中提到,使用 get 的時候,參數會顯示在瀏覽器地址欄上,而 post 不會。

建議:

1、get方式的安全性較post方式要差些,但是執行效率卻比post方法好。

如果這些數據是中文數據而且是非敏感數據,那么使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,包含機密信息的話,建議用post數據提交方式為好;

2、在做數據查詢時,建議用get方式;而在做數據添加、修改或刪除時,建議用post方式;

總結:(簡答)

(1)get的參數會顯示在瀏覽器地址欄中,而post的參數不會顯示在瀏覽器地址欄中;

(2)使用post提交的頁面在點擊【刷新】按鈕的時候瀏覽器一般會提示“是否重新提交”,而get則不會;

(3)用get的頁面可以被搜索引擎抓取,而用post的則不可以;

(4)用post可以提交的數據量非常大,而用get可以提交的數據量則非常小(2k),受限於網頁地址的長度。

(5)用post可以進行文件的提交,而用get則不可以。

轉載自:提交方式post和get有什么區別?

https://blog.csdn.net/hemingyang97/article/details/82053961

如果覺得本內容對你有幫助的話請移步支持下原作者。

個人補充:get方式可以做資源定位,比如淘寶網站,你點開如下兩個網站最終得到的網站結果是一樣的。

https://www.taobao.com/markets/tbhome/yhh-detail?spm=a21bo.2017.201870.2.5af911d96QfHXF&contentId=2500000210001947284&scm=1007.12846.65991.0&pvid=cb56c230-2321-4b35-9265-7d0e52924149

https://www.taobao.com/markets/tbhome/yhh-detail?contentId=2500000210001947284


免責聲明!

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



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