POST與GET方法的區(qū)別簡要分析
更新時間:2008年10月30日 15:24:33 作者:
原理介紹:理論上說,GET是從服務器上請求數據,POST是發(fā)送數據到服務器。事實上,GET方法是把數據參數隊列(query string)加到一個URL上,值和表單是一一對應的。
比如說,name=John。在隊列里,值和表單用一個&符號分開,空格用+號替換,特 殊的符號轉換成十六進制的代碼。因為這一隊列在URL里邊,這樣隊列的參數就能看得到,可以被記錄下來,或更改。通常GET方法還限制字符的大小(大概是 256字節(jié) )。事實上POST方法可以沒有時間限制的傳遞數據到服務器,用戶在瀏覽器端是看不到這一過程的,所以POST方法比較適合用于發(fā)送一個保密的(比如信用 卡號)或者比較大量的數據到服務器。
區(qū)別:
Post是允許傳輸大量數據的方法,而Get方法會將所要傳輸的數據附在網址后面,然后一起送達服務器,因此傳送的數據量就會受到限制,但是執(zhí)行效率卻比Post方法好。
建議:
1、get方式的安全性較Post方式要差些,包含機密信息的話,建議用Post數據提交方式;
2、在做數據查詢時,建議用Get方式;而在做數據添加、修改或刪除時,建議用Post方式;
METHOD的屬性值為POST時,所有作為請求提交的<form>段中的HTML控件單元的值的集合,每個成員均為只讀。(用于檢索HTTP請求正文中表單元素的值。)
sub.htm:注意方法是POST
<form action="demo.asp" method=post>
<input type=text name="Content" size=20>
<input type=submit value="提交">
</form>
demo.asp:
<%Dim TextCon
TextCon=request.form("Content")
response.write TextCon %>
QueryString 表單信息通過get方式發(fā)送時,服務器端或另一個asp頁面就使用querystring方法接收。(用于檢索HTTP查詢字符串中變量的值。)
sub.htm:注意方法是GET
<form action="demo.asp" method=get>
<input type=text name="Content" size=20>
<input type=submit value="提交">
</form>
demo.asp:
<%Dim TextCon
TextCon=request.querystring("Content")
response.write TextCon %>
此例中,你不用sub.HTM,在地址欄中輸入demo.asp?content=演示Querystring看看。request.form可不能這樣做。
區(qū)別:
Post是允許傳輸大量數據的方法,而Get方法會將所要傳輸的數據附在網址后面,然后一起送達服務器,因此傳送的數據量就會受到限制,但是執(zhí)行效率卻比Post方法好。
建議:
1、get方式的安全性較Post方式要差些,包含機密信息的話,建議用Post數據提交方式;
2、在做數據查詢時,建議用Get方式;而在做數據添加、修改或刪除時,建議用Post方式;
METHOD的屬性值為POST時,所有作為請求提交的<form>段中的HTML控件單元的值的集合,每個成員均為只讀。(用于檢索HTTP請求正文中表單元素的值。)
sub.htm:注意方法是POST
<form action="demo.asp" method=post>
<input type=text name="Content" size=20>
<input type=submit value="提交">
</form>
demo.asp:
<%Dim TextCon
TextCon=request.form("Content")
response.write TextCon %>
QueryString 表單信息通過get方式發(fā)送時,服務器端或另一個asp頁面就使用querystring方法接收。(用于檢索HTTP查詢字符串中變量的值。)
sub.htm:注意方法是GET
<form action="demo.asp" method=get>
<input type=text name="Content" size=20>
<input type=submit value="提交">
</form>
demo.asp:
<%Dim TextCon
TextCon=request.querystring("Content")
response.write TextCon %>
此例中,你不用sub.HTM,在地址欄中輸入demo.asp?content=演示Querystring看看。request.form可不能這樣做。