ASP.NET的GET和POST的区别

1、Get是从服务器上获取数据,Post是向服务器传送数据

2、Get是把参数数据队列添加到提交表单的Action属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。Post是通过HTTP Post机制,将表单内各个字段与其内容防止在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看到整个过程。

3、对于Get方式,服务端用Request.QueryString获取变量的值,对于Post方式,服务器端用Request.From获取提交的数据

4、Get传送的数据量较小,不能大于2KB。Post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB。IIS5中卫100KB。

5、Get安全性非常低,Post安全性比较高。但是执行效率比Post方法好。

建议:

1、Get方式的安全性较Post方式要差些,包含机密信息的话,建议采用Post数据提交方式;

2、在做数据查询时,采用Get方式,而在做数据添加、修改或删除时,建议采用Post方式;

Params、Request、Request.QueryString、Request.From具体区别

MSDN:Request ObjectRequest

Request.From:获取以Post方式提交的数据

Request.QueryString:获取地址栏参数(以Get方式提交)

Request:包含以上两种方式(优先获取Get方式提交的数据),它会在QueryString、Form、Server.Variable中都按照先后顺序搜寻一遍。而且又是也会得到不同的结果。如果你仅仅是需要Form中的一个数据,但是你使用了Request而不是Request.Form,那么程序将在QueryString和Server.Variable中也搜寻一般。如果正好你的QueryString或ServerVariable中也有同名的项,你得到的就不是你原本想要的值了。

Request.Params是所有的Post和Get传过来的值的集合,Request.Params其实是一个集合,它依次包括Request.QueryString、Request.Form、Request.Cookies和Request.ServerVariable。

ASP.NET默认虽然是POST Form,但是只是自己Post自己,不同Post到其他页面

如果没要提交到另一个页面的话,用HTML元素把runat="Server"去掉,改为Submit提交,用Request.Form["..."]可以取值

知识共享许可协议
《ASP.NET的GET和POST的区别》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     171.24ms