今天早晨看到一篇总结GET/POST的文章,转载一下.其实这个是面试时候常见的问题.
表单form的数据提交二种方式
<form id="form1" method ="get" runat="server">
</form>
<form id="form1" method ="post" runat="server">
</form>
在数据接收方面他们的差别体现在:
get方式:Request.QueryString["id名称"];
post方式:Request.Form["ID名称"];
当然也可以,Request.Params[""]; 或者 Request[""];
别人总结的结果是:
1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。
5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。
建议:
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方
可以参考:
http://blog.csdn.net/gideal_wang/archive/2009/07/02/4316691.aspx
http://www.cnblogs.com/wxf0701/archive/2008/08/17/1269798.html