本文主要是介绍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>
点击按钮之前:
点击按钮之后:
总结
每一次的总结都是一次颗粒归仓的机会,当我们越走的费劲,越应该停下来,静下心来总结。有的时候觉得自己其实没有学明白,总结不出来白浪费时间,但是你不知道,当你查资料进行总结的过程中,恰恰是最好的学习。还有,光有理论知识是不行的,我们应该动手实践,老师说过,计算机是一个可以很好实验的科学,如果是医学或者是生物,我们杀了一只兔子,如果不成功,想要换个方式,就必须再杀一只,但是计算机可以改改,再执行一遍就可以了。所以我们还是动手实践一下吧,更助于理解。
这篇关于ASP.NET内置对象——Request和Response的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!