单form的提交有两种方式,一种是get的方法,一种是post 的方法.看下面代码,理解两种提交的区别:

<form id="form1" method="get" runat="server">
    <div>
        你的名字<asp:TextBox ID="name" runat="server"></asp:TextBox><br />
        <br />
        你的网站<asp:TextBox ID="website" runat="server"></asp:TextBox><br />
        <br />
        <br />
        <asp:Button ID="Button1" runat="server" Text="send" /><br />
        <br />
        <br />
        学习request 和 response的用法<br />
        <br />
        <br />
   </div>
</form>

<form id="form2" method="post" runat="server">
    <div>
        你的名字<asp:TextBox ID="name2" runat="server"></asp:TextBox><br />
        <br />
        你的网站<asp:TextBox ID="website2" runat="server"></asp:TextBox><br />
        <br />
        <br />
        <asp:Button ID="Button2" runat="server" Text="send" /><br />
        <br />
        <br />
        学习request 和 response的用法<br />
        <br />
        <br />
    </div>
</form>

从URL中可看出区别.那么那如何编程实现数据的接收呢?
  
  第1种,接收用get 方法传输的数据的写法:

Code
protected void Page_Load(object sender, EventArgs e)
    {
        string id = Request.QueryString["name"];
        string website = Request.QueryString["website"];
        Response.Write(id + "<br>" + website);

Response.Write("你使用的是" + Request.RequestType + "方式传送数据");

}

第2种,接收用post 方法传输的数据的写法:

Code
protected void Page_Load(object sender, EventArgs e)
    {
      
        string id2 = Request.Form["name2"];
        string website2 = Request.Form["website2"];
        Response.Write(id2 + "<br>" + website2);

Response.Write("你使用的是" + Request.RequestType + "方式传送数据");

}

string id4 = Request["name4"];
        string website4 = Request["website4"];
        Response.Write(id4 + "<br>" + website4);

第3种,同时接受get 和post 方法传送数据的代码写法:

A 写法

string id3 = Request.Params["name3"];
        string website3 = Request.Params["website3"];
        Response.Write(id3 + "<br>" + website3);

B 写法

string id4 = Request["name4"];
        string website4 = Request["website4"];
        Response.Write(id4 + "<br>" + website4);

表单提交中get和post方式的区别归纳如下几点:

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传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

建议:
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

转载于:https://www.cnblogs.com/ManiacStar/archive/2009/04/21/1440180.html

(转)Asp.net 中 Get和Post 的用法相关推荐

  1. ASP.NET中Get和Post的用法

    ASP.NET中Get和Post的用法 http://developer.51cto.com  2009-07-29 16:53  wangpei  cnblogs  我要评论(0) 本文介绍了asp ...

  2. Asp.net中具体的日期格式化用法

    1.绑定时格式化日期方法:  <ASP:BOUNDCOLUMN DATAFIELD= "JoinTime " DATAFORMATSTRING= "{0:yyyy- ...

  3. ASP.NET中 RequiredFieldValidator(非空验证)的使用

    ylbtech-ASP.NET-Control-Validator: RequiredFieldValidator(非空验证)的使用 ASP.NET中 RequiredFieldValidator(非 ...

  4. 搜集《ASP.NET中常用的26个优化性能方法》

    1. 数据库访问性能优化 a.数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源.ASP.NET中提供了连接 ...

  5. 在ASP.NET中跟踪和恢复大文件下载

    在Web应用程序中处理大文件下载的问题一直出了名的困难,因此对于大多数站点来说,如果用户的下载被中断了,它们只能说悲哀降临到用户的身上了.但是我们现在不必这样了,因为你可以使自己的ASP.NET应用程 ...

  6. ASP.NET中使用MD5和SHA1算法加密

    你的主页或者你管理的网站有各种密码需要保护,把密码直接放在数据库或者文件中存在不少安全隐患,所以密码加密后存储是最常见的做法.在ASP.NET中实现加密非常容易..NET SDK中提供了CookieA ...

  7. ASP.NET中如何防范SQL注入式攻击

    1将sql中使用的一些特殊符号,如' -- /* ; %等用Replace()过滤: 2限制文本框输入字符的长度: 3检查用户输入的合法性:客户端与服务器端都要执行,可以使用正则. 4使用带参数的SQ ...

  8. 在ASP.NET 中实现单点登录

    出自:[孟宪会之精彩世界] 发布日期:2005年1月27日 8点48分0秒 [有删改] 由于某些原因,在我们的应用中会遇到一个用户只能在一个地方登录的情况,也就是我们通常所说的单点登录.在ASP.NE ...

  9. ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页

    关键字:DataGrid.存储过程.分页 出自: http://blog.csdn.net/yzx110/archive/2004/08/18/78525.aspx 摘要:在最进的一个项目中因为一个管 ...

最新文章

  1. 40 个 Spring Boot 常用注解
  2. jQuery 技术揭秘
  3. 命中注定码农路[一. 重新开始]
  4. 现在比较流行的一种新的清除浮动的方法
  5. 启动服务提示-bash: mongod: command not found
  6. 深度学习中所有的优化器的详细介绍与列表化对比分析
  7. Android/Linux线程死锁demo分析
  8. spin_lock的变体
  9. Mac系统镜像文件(Monterey-Sierra,加部分OS X)
  10. Java中的三大特性 - 超详细篇
  11. ubuntu 版mysql客户端工具_mysql linux版下载
  12. aria2最新tracker服务器,Aria2自动更新BT Tracker服务器列表的方法
  13. Python基础知识从hello world 开始(第三天)
  14. 产品读书《用户力:需求驱动的产品、运营与商业模式》
  15. Linux Intel 无线网卡Wifi+蓝牙
  16. Java文字转语音功能实现
  17. FREQCON OVERSPEED 1.2 368U4 204S
  18. Linux I2C从设备树信息查看与添加方法
  19. 98% after emitting CopyPlugin Vue运行到98% after emitting CopyPlugin卡主不动
  20. 苹果史上8款最失败产品

热门文章

  1. JS(JQEERY) 获取JSON对象中的KEY VALUE
  2. 8k分辨率需要多大带宽_又一支持8K分辨率的接口标准发布
  3. python tkinter实例_python绘制一个图形示例源码(tkinter)
  4. xslt 标签取集合第一条数据_1+x证书Web前端开发中级理论考试(试卷1)
  5. AUTOSAR从入门到精通100讲(二十八)-AutoSar之CAN网络管理
  6. xss测试工具(xsstrike基于python)
  7. CSDN转载别人文章的操作
  8. php为什么获取不到id,微信小程序无法获取到unionId怎么办
  9. Es6学习笔记(7)----数组的扩展
  10. jQuery之jQuery扩展和事件