request与response的区别。

Request对象:为脚本提供了当客户端请求一个页面或者传递一个窗体时,客户端提供的全部信息。这包括能指明浏览器和用户的HTTP变量,在这个域名下存放在浏览器中的cookie,任何作为查询字符串而附于URL后面的字符串或页面的<FORM>段中的HTML控件的值。也提供使用Secure Socket Layer(SSL)或其他加密通信协议的授权访问,及有助于对连接进行管理的属性。
Response对象:用来访问服务器端所创建的并发回到客户端的响应信息。为脚本提供HTTP变量,指明服务器和服务器的功能和关于发回浏览器的内容的信息,以及任何将为这个域而存放在浏览器里新的cookie。它也提供了一系列的方法用来创建输出,例如无处不在的Response.Write方法。
cookie: Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。 当你再次来到该网站时,网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,或者让你不用输入ID、密码就直接登录等等。
讲的通俗一点就是:
Request(中文“请求”的意思):可以理解为客户端向服务器请求的信息,就是客户端向服务器请求时,把自己的浏览器信息、HTTP变量和保存在客户端的Cookie告诉服务器,这样服务器就可以根据这些信息判断是谁请求的,之前有没有请求过,对应客户端的Session是什么等等。

Response(中文“反应、响应”的意思):可以理解为服务器对客户端请求的响应,就是服务器接收到客户端的请求后,成生页面信息、Cookie(发到客户端后就保存在客户端)等发送到客户端。

 一 Request对象

 request对象可以用于访问人任何用HTTP请求的传递的信息,包括从HTML表单的POST方法或GET方法传递的参

数、Cookie和用户认证。下面介绍几个常用的属性。

       1 属性

1)Form

      获取窗体中变量的集合。其实它就是一个容器,将网页间需要传递的信息存放在Form中,网页接收即可。当

 method的属性值为POST或GET时,所有作为请求提交的<form>段中的HTML控件/WEB控件单元的值的组合,每个

成员均为只读。下面用代码实现两个方法:

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <!--使用post方法-->  
  2.     <form id="form2" runat="server" method="post">  
  3.   
  4.     <!--使用get方法-->  
  5.     <form id="form1" runat="server" method="get">  

[csharp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1.  //使用Post的方式获得Form表单  
  2.         protected void btnOK_Click(object sender, EventArgs e)  
  3.         {  
  4.             string name;  
  5.             name = Request.Form["TextBox1"];  
  6.             Response.Write(name);  
  7.   
  8. //使用Get方式获得Form表单  
  9.         protected void btnOK_Click(object sender, EventArgs e)  
  10.         {  
  11.             string name;  
  12.             name = Request.QueryString ["TextBox1"];  
  13.             Response.Write(name);  
  14.         }  


2)QueryString

      依附于用户请求的URL后面的名称/数值或作为请求提交的且method属性值为Get的值。关于method=“get”具体的

例子见上。Querystring检索HTTP查询字符串变量的值,HTTP查询字符串有问号后的值制定。常用于页面跳转时,

参数的传递。具体代码展示:

[csharp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. protected void btnOK_Click(object sender, EventArgs e)  
  2.        {  
  3.            Response.Redirect("Vote_ShowResult.aspx?voteid=" + this.masterID);  
  4.        }  

   二 Response对象

        Response对象用于系那个客户浏览器发送服务器的数据。用户可以使用该对象将服务器端的数据用HTML的格

式发送到客户端浏览器。该对象的功能与Request对象的功能相反,Request对象用于得到用户提交的数据,而

Response对象用于将服务器的数据发送到用户浏览器,这是实现网页动态效果的基础。

        1 属性

1)Buffer属性

        在asp.net 程序中,可以为页面在服务器端设置一个缓冲区。其实缓冲区就是一个存储区,可以在其释放数据之
 前容纳一段时间。设置缓冲区后,服务器端可以减少与客户端连接的次数而调高整体的相应速度,并可在满足某些
条件时撤销已经处理的结果,而不会出现响应完成一部分就停止的状况。通过Beffer属性决定打开/关闭缓存。若为false则关闭缓存,若为true则打开缓存。Buffer属性的更改必须放在HTML或脚本输出之前,因为任何内容发送到浏览器后Buffer属性值就不能再更改,否则会引起错误。
      注意:在asp.net 文件的任意地方用到Redirect方法重定向页面,必须在文件开头关闭Buffer属性,否则会报错。

2)status属性

       用来传递服务器HTTP响应的状态。可以用来处理HTTP请求后服务器返回的错误。服务器返回状态码有3位数字构成,可以根据状态码来确定服务器是如何处理HTTP请求的。在调试过程或向客户端返回有关错误时,status属性很重要,可以根据状态码来明确错误源。
另:很全的状态码    http://blog.sina.com.cn/s/blog_4ae187490100x9u7.html

3)IsClientConnected属性

        它是只读属性 ,用来指示上次调用Response.write后,客户端是否与服务器相连。该属性允许用户在客户端与服务器没有连接的情况下更多的控制。例如

         2方法

1)Write

       它是Reponse对象中最常用的方法之一,它可以把变量的值发送到客户端的当前页,它几乎和一输出所有的对象和数据。在write方法中可以嵌入任何HTML标记,只要该标记是合法的。

2)Clear

       clear用于清除缓冲区所有HTML输出,但是它只删除相应正文而不删除相应标题。在服务器上的程序产生错误时,可用clear方法来处理错误情况。
       注:clear方法仅当Response对象的Buffer属性设为True时才起作用。如果Buffer属性未设置为True,则clear方法将导致运行错误。

3)End

       End方法使服务器停止当前脚本的处理并返回当前结果。如果response对象的Buffer设为为True,则End方法立即把缓存中的内容发送到客户端并清除缓存。因此,若想取消向客户端的所有输出,可以先用clear方法清除缓存,再用End方法停止脚本的处理。

4)Redirect

       在普通网页中,可以使用超链接的方式来引导放我这跳转到另一个页面,但是这个过程需要访问者单击一个超链接才进行。response对象的redirect方法则可以自动完成页面间的跳转,而访问者几乎不会感觉出来。

 总结:

        Response对象用于接收客户端浏览器提交的数据,而Request对象的功能则是将服务端的据发送到客户端浏览器。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值