ASP.NET内置对象——Request和Response

引言

      ASP.NET 的视频才看了几集,就听里面的老师一直在强调Request对象、Response对象等内置对象。还在一直说page的ispostback属性,这就证明这些基础很重要,所以有必要进行总结。

内置对象

       ASP.NET提供了内置对象有Request、Response、Application、Session、Server、Cookie、Cache。这些对象使用户更容易收集通过浏览器请求发送的信息、相应浏览器以及存储用户信息,以实现其他特定的状态管理和页面信息的传递。今天我们详细说一下Request和Response。

Request

          概述

              Request对象实际上是System.Web命名空间中的HttpRequest类的对象。用来获取从客户端提交和上传的信息。使用该对象可以访问任何用HTTP请求传递的信息,包括用户在Web表单中提交的信息、URL中参数信息、客户端信息。Request对象是Page对象的成员之一,所以在程序中不需要做任何的声明即可直接使用。

          基本属性比较

             1)  使用Request.Form属性获取数据——提交方式为post

                    这种方式是将数据作为一个整个的集合来进行提交。在URL中看不到。

                    表示方式:Request.From[“变量名”]或者Requset.Form.Get[“变量名”]

             例子:

<span style="font-size:18px;">protected void Page_Load(object sender, EventArgs e)
        {
            string userName =Request.Form["userName"].ToString();
            string userPwd =Request.Form.Get("userPwd").ToString();
       Response.Write(userName);
        }
 </span>



            2)  使用Request.QueryString属性获取数据——提交方式为Get

                    这种方式将提交的所有参数传到URL里面,可以说是明文提交,就是把要传递的值直接在链接请求中可以看到。

                    表示方式:Request.QueryString[“变量名”]

            例子:

<span style="font-size:18px;">protected void Page_Load(object sender, EventArgs e)
        {
            string userName2 =Request.QueryString["userName2"].ToString();
            string userPwd = Request.QueryString("userPwd").ToString();
       Response.Write(userName);
        }</span>


              区别总结

              1、安全性:如果用get提交一个验证用户名和密码的Form,一般认为是不安全的。因为用户名和密码都会出现在URL上,进而出现在浏览器的历史记录中。所以这种对安全性有要求的情况下,要使用post方式。

              2、Get方式是把参数数据队列加到提交表单的Action属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。Post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML Header内一起传送到Action属性所致的URL地址,用户看不到这个过程。

             3、Get方式传送的数据量较小,Post传送的数据量较大,一般被默认为不受限制。

             4、Get方式执行效率高,post低。

 

 Response

       概述

       Response对象继承于System.Web.HttpRespone类,用来发送信息到客户端,并对发送过程进行控制。它提供了标志服务器和性能的HTTP变量,发送给浏览器的信息和在cookie中存储的信息。也提供了一系列用户创建输出页面的方法,例如:Response.Write方法。

     基本语法

       Response.[属性\方法][变量],变量是一些字符串变量,用来作为方法的参数。

 

 ispostback属性

       这个属性表示当前的请求是否第一次打开。当page.ispostback的值为false的时候,表示是第一次,如果为true表示不是第一次。

 

例子:

 

<span style="font-size:18px;">  public partial class login : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                this.TextBox1.Text = "";
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string strTest1 = Request["TextBox1"].ToString();
            string strTest2 = Request["TextBox2"].ToString();
            Response.Write(strTest1 + "<br>" + strTest2);

        }
    }</span>


点击按钮之前:

 

点击按钮之后:



总结

      每一次的总结都是一次颗粒归仓的机会,当我们越走的费劲,越应该停下来,静下心来总结。有的时候觉得自己其实没有学明白,总结不出来白浪费时间,但是你不知道,当你查资料进行总结的过程中,恰恰是最好的学习。还有,光有理论知识是不行的,我们应该动手实践,老师说过,计算机是一个可以很好实验的科学,如果是医学或者是生物,我们杀了一只兔子,如果不成功,想要换个方式,就必须再杀一只,但是计算机可以改改,再执行一遍就可以了。所以我们还是动手实践一下吧,更助于理解。

 

 

 

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 28
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值