1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。如果不指定Method,则默认为GET请求,Form中提交的数据将会附加在url之后,以?分开与url分开。
3. 对于get方式,asp下用Request.QueryString获取变量的值,php下用$_GET获取。对于post方式,asp下用Request.Form获取提交的数据,php下用$_POST获取。
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。
5. get安全性非常低,post安全性较高。
仔细研究下面的代码。你可以运行之来感受一下:
代码
代码如下 | 复制代码 |
〈!–两个Form只有Method属性不同–〉 〈FORM ACTION=“getpost.asp” METHOD=“get”? 〈INPUT TYPE=“text” NAME=“Text” VALUE=“Hello World”〉〈/INPUT〉 〈INPUT TYPE=“submit” VALUE=“Method=get”〉〈/INPUT〉 〈/FORM〉 〈BR〉 〈FORM ACTION=“getpost.asp” METHOD=“post”〉 〈INPUT TYPE=“text” NAME=“Text” VALUE=“Hello World”〉〈/INPUT〉 〈INPUT TYPE=“submit” VALUE=“Method=post”〉〈/INPUT〉 〈/FORM〉 〈BR〉 〈BR〉 〈% If Request.QueryString(“Text”) 〈〉 ““ Then %〉 通过get方法传递来的字符串是: “〈B〉〈%= Request.QueryString(“Text”) %〉〈/B〉“〈BR〉 〈% End If %〉 〈% If Request.Form(“Text”) 〈〉 ““ Then %〉 通过post方法传递来的字符串是: “〈B〉〈%= Request.Form(“Text”) %〉〈/B〉“〈BR〉 〈% End If %〉 |
说明
把上面的代码保存为getpost.asp,然后运行,首先测试post方法,这时候,浏览器的url并没有什么变化,返回的结果是:
通过post方法传递来的字符串是: "Hello World"
然后测试用get方法提交,请注意,浏览器的url变成了:
http://localhost/general/form/getpost.asp?Text=Hello+World
而返回的结果是:
通过get方法传递来的字符串是: "Hello World"
最后再通过post方法提交,浏览器的url还是:
http://localhost/general/form/getpost.asp?Text=Hello+World
而返回的结果变成:
通过get方法传递来的字符串是: "Hello World"
通过post方法传递来的字符串是: "Hello World"
提示
通过get方法提交数据,可能会带来安全性的问题。比如一个登陆页面。当通过get方法提交数据时,用户名和密码将出现在URL上
创造与魔法 安卓版v1.0.0750
创造与魔法是一款开放世界手游,在游戏中玩家可探索这个奇妙的世
创造与魔法修改版 最新版v1.0.0750
创造与魔法无限点券版是款探索冒险游戏,该款游戏的操作还是蛮自
战争与文明官方版本 安卓版v1.7.16
战争与文明是一款由上海邮通科技有限公司开发的战争策略游戏,这
迷你世界0元领皮肤无限迷你币版 最新安卓版v1.43.0
迷你世界0元购买皮肤版是这款开放沙盒冒险建造游戏的特殊破解版
创造与魔法无限经验版 安卓版v1.0.0750
创造与魔法无限经验版是款可以改造环境,整个游戏的自由度还是蛮