1、Get 方法通過 URL 請求來傳遞用戶的數(shù)據(jù),將表單內(nèi)各字段名稱與其內(nèi)容,以成對的字符串連接,置于 action 屬性所指程序的 url 后,如[url]http://www.mdm.com/test.asp?name=asd&password=sad[/url],數(shù)據(jù)都會直接顯示在 url 上,就像用戶點擊一個鏈接一樣;Post 方法通過 HTTP post 機制,將表單內(nèi)各字段名稱與其內(nèi)容放置在 HTML 表頭(header)內(nèi)一起傳送給服務(wù)器端交由 action 屬性能所指的程序處理,該程序會通過標準輸入(stdin)方式,將表單的數(shù)據(jù)讀出并加以處理
2、 Get 方式需要使用 Request.QueryString 來取得變量的值;而 Post 方式通過 Request.Form 來訪問提交的內(nèi)容
3、Get 方式傳輸?shù)臄?shù)據(jù)量非常小,一般限制在 2 KB 左右,但是執(zhí)行效率卻比 Post 方法好;而 Post 方式傳遞的數(shù)據(jù)量相對較大,它是等待服務(wù)器來讀取數(shù)據(jù),不過也有字節(jié)限制,這是為了避免對服務(wù)器用大量數(shù)據(jù)進行惡意攻擊,根據(jù)微軟方面的說法,微軟對用 Request.Form() 可接收的最大數(shù)據(jù)有限制,IIS 4 中為 80 KB 字節(jié),IIS 5 中為 100 KB 字節(jié)
建議:除非你肯定你提交的數(shù)據(jù)可以一次性提交,否則請盡量用 Post 方法
4、Get 方式提交數(shù)據(jù),會帶來安全問題,比如一個登陸頁面,通過 Get 方式提交數(shù)據(jù)時,用戶名和密碼將出現(xiàn)在 URL 上,如果頁面可以被緩存或者其他人可以訪問客戶這臺機器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用 Post 方法;Post 方法提交的表單頁面常見的問題是,該頁面如果刷新的時候,會彈出一個對話框
建議:出于安全性考慮,建議最好使用 Post 提交數(shù)據(jù)
2、 Get 方式需要使用 Request.QueryString 來取得變量的值;而 Post 方式通過 Request.Form 來訪問提交的內(nèi)容
3、Get 方式傳輸?shù)臄?shù)據(jù)量非常小,一般限制在 2 KB 左右,但是執(zhí)行效率卻比 Post 方法好;而 Post 方式傳遞的數(shù)據(jù)量相對較大,它是等待服務(wù)器來讀取數(shù)據(jù),不過也有字節(jié)限制,這是為了避免對服務(wù)器用大量數(shù)據(jù)進行惡意攻擊,根據(jù)微軟方面的說法,微軟對用 Request.Form() 可接收的最大數(shù)據(jù)有限制,IIS 4 中為 80 KB 字節(jié),IIS 5 中為 100 KB 字節(jié)
建議:除非你肯定你提交的數(shù)據(jù)可以一次性提交,否則請盡量用 Post 方法
4、Get 方式提交數(shù)據(jù),會帶來安全問題,比如一個登陸頁面,通過 Get 方式提交數(shù)據(jù)時,用戶名和密碼將出現(xiàn)在 URL 上,如果頁面可以被緩存或者其他人可以訪問客戶這臺機器,就可以從歷史記錄獲得該用戶的帳號和密碼,所以表單提交建議使用 Post 方法;Post 方法提交的表單頁面常見的問題是,該頁面如果刷新的時候,會彈出一個對話框
建議:出于安全性考慮,建議最好使用 Post 提交數(shù)據(jù)