掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
Get和Post的區(qū)別

1.get是從服務器上獲取數(shù)據(jù),post是向服務器上傳數(shù)據(jù)。
2.get是把參數(shù)數(shù)據(jù)列加到提交表單的action屬性所指的url中,值和表單內(nèi)各個字段一一對應,在URL中可以看到。post是通過HTTP POST機制,將表單內(nèi)各個字段與其內(nèi)容放置在HTML header 內(nèi)一起傳送到 action屬性所指的URL地址。用戶看不到這個過程。
3.對于get方式,服務器端用Request.QueryString獲取變量的值,對于post方式,服務器端用Request.Form獲取提交的數(shù)據(jù)。
4.get傳送的數(shù)據(jù)量較小。不能大于2kb(這主要是應為受URL長度限制),post傳送的數(shù)據(jù)量較大,一般被默認為不受限制。但理論上,限制取決于服務器的處理能力。
5.get安全性較低,post安全性較高。因為get在傳送的過程,數(shù)據(jù)被放在請求的URL中,而如今享有的很多服務器、代理服務器或者用戶代理都會將請求URL記錄到日志文件中,然后放在某個地方,這樣就可能會有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數(shù)據(jù),一些系統(tǒng)內(nèi)部消息會一同顯示在用戶面前。post的所有操作對用戶來說都是不可見的。
6.在FORM提交的時候,如果不指定Method,則默認為get請求(.net默認是post),F(xiàn)orm中提交的數(shù)據(jù)將會附加在RUL之后,以?分開URL分開。字母數(shù)據(jù)字符原樣發(fā)送,但空格轉換為“+”號,其它符號轉換為%xx,其中xx為該符號以16進制表示的ascii(或iso latin-1)值。
get請求提交的數(shù)據(jù)放置在HTTP請求協(xié)議頭中,而post提交的數(shù)據(jù)則放在實體數(shù)據(jù)中;get方式提交的數(shù)據(jù)最多只能有2048字節(jié),而post則美譽寫限制。
post傳遞的參數(shù)在doc里,也就http協(xié)議所傳遞的文本,接受時再解析參數(shù)部分。獲得參數(shù)。一般用post比較好。post提交數(shù)據(jù)是隱式的,get是通過在URL里面?zhèn)鬟f的,用來傳遞一些不需要保密的數(shù)據(jù),get是通過的URL里傳遞參數(shù),post不是。
希望對你有幫助。
【編輯推薦】

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流