博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Response对象
阅读量:4584 次
发布时间:2019-06-09

本文共 1514 字,大约阅读时间需要 5 分钟。

Response对象是HttpResponse类的一个实例。该类主要是封装来自ASP.NET操作的HTTP响应信息。 

 

Response属性:

     BufferOutput:获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个页之后将其发送

                        如果缓冲了到客户端的输出,则为true;否则为false。默认为true

            Cache:获取Web页的缓存策略(过期时间、保密性、变化子句)

                     包含有关当前响应的缓存策略信息的HttpCachePolicy对象

          Charset:获取或设置输出流HTTP字符集

 IsClientConnected:获取一个值,通过该值指示客户端是否仍连接在服务器上  

                            如果客户端当前仍在连接,则为true;否则为false

实例:使用缓冲区  

由于Response对象的BufferOutput属性默认为True,所以要输出到客户端的数据都暂时存储在缓冲区内,等到所有的事件程序,以及所有的页面对象全部解译完毕后,才将所有在缓冲区中的数据送到客户端的浏览器。下面的例子将演示缓冲区是如何工作的。

  <%Response.Write("缓存已清除" + "<Br>");  %>  

<Script Language="C#" Runat="Server">  void Page_Load(Object sender, EventArgs e)  {  
Response.Write("缓存清除前" + "<Br>");  Response.Clear();  }  
</Script> 

上述程序代码实例首先在“Page_Load”事件中送出“缓存清除前”这一行,此时的数据存在缓冲区中。接着使用Response对象的Clear方法将缓冲区的数据清除,所以刚刚送出的字符串已经被清除。然后IIS开始读取HTML组件的部分,并将结果送至客户端的浏览器。由执行结果只出现“缓存已清除”可知,使用Clear方法之前的数据并没有出现在浏览器上,所以程序开始时是存在缓冲区内的。如果在相同的程序中加入“Response.BufferOutput=false”:

 <%Response.Write("清除之后的数据<Br>");  %>  

<Script Language="C#" Runat="Server">  void Page_Load(Object sender, EventArgs e)  {  
Response.BufferOutput=false;  
Response.Write("清除缓冲区之前的数据" + "<Br>");  Response.Clear();  }  
</Script>  
可以发现,执行的结果并没有因为使用Clear方法而将缓冲区的数据清除,这表明数据是直接输出而没有存放在缓冲区内。

 

Response对象的方法  

Response对象可以输出信息到客户端,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。下表列举了几个常用的方法

Write:将指定的字符串或表达式的结果写到当前的HTTP输出

End:停止页面的执行并得到相应结果

Clear:用来在不将缓存中的内容输出的前提下,清空当前页的缓存,仅当使用了缓存输出时,才可以利用Clear方法

Flush:将缓存中的内容立即显示出来。该方法有一点和Clear方法一样,它在脚本前面没有将Buffer属性设置为True时会出错。和End

方法不同的是,该方法调用后,该页面可继续执行
 Redirect:使浏览器立即重定向到程序指定的URL
 
  

转载于:https://www.cnblogs.com/xwchengc/p/4138047.html

你可能感兴趣的文章
少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘
查看>>
Oracle学习第七课-表连接及其应用
查看>>
Python基础篇【第十三篇】:面向对象
查看>>
bzoj 2465 小球
查看>>
String类
查看>>
NoSQL简介
查看>>
java_2018_Day5_变量的格式
查看>>
在C++中调用DLL中的函数
查看>>
leetcode 32. Longest Valid Parentheses
查看>>
OpenSSL创建私有CA
查看>>
CSS3画腾讯QQ图标 无图片和js参考
查看>>
C#使用Emit生成构造函数和属性
查看>>
python pip源配置,pip配置文件存放位置
查看>>
[数据库]关于MAX()函数的一个坑
查看>>
实现前后滚动效果-axure设计实例
查看>>
windows下mysql忘记root密码--吐血测试,都是泪
查看>>
lnmp集成开发环境安装pdo_dblib扩展
查看>>
linux web.py spawn-fcgi web.py 配置
查看>>
lintcode : 空格替换
查看>>
lintcode 中等题:subsets II 带重复元素的子集
查看>>