热搜词
发表于 2006-11-25 21:04:52 | 显示全部楼层 |阅读模式
<P align=center>ASP内置对象详解之Response对象</P><P>  Response对象用于向客户端浏览器发送数据,用户可以使用该对象将服务器的数据以HTML的格式发送到用户端的浏览器,它与Request组成了一对接收、发送数据的对象,这也是实现动态的基础。下面介绍它常用的属性和方法。</P><P>  <STRONG>1、Buffer属性</STRONG></P><P>  该属性用于指定页面输出时是否要用到缓冲区,默认值为False。当它为True时,直到整个Active Server Page执行结束后才会将结果输出到浏览器上。如:<BR>&lt;%Response.Buffer=True%&gt;<BR>&lt;html&gt;<BR>&lt;Head&gt;<BR>&lt;title&gt;Buffer示例&lt;/title&gt;<BR>&lt;/head&gt;<BR>&lt;body&gt;<BR>&lt;%<BR>&nbsp; for i=1 to 500<BR>&nbsp;&nbsp;&nbsp; response.write(i &amp; "&lt;br&gt;")<BR>&nbsp; next<BR>%&gt;<BR>&lt;/body&gt;<BR>&lt;/html&gt; <BR>  这页执行时,整个主页的所有内容会同时显示在浏览器上,这个主页会存在缓存区中直到脚本执行结束。</P><P>  <STRONG>2、Expires属性</STRONG></P><P>  该属性用于设置浏览器缓存页面的时间长度(单位为分),必须在服务器端刷新。通过如下设置:<BR>&lt;%Response.Expires=0%&gt; <BR>  通过在ASP文件中加入这一行代码,要求每次请求是刷新页面,因为Response一收到页面就会过期。</P><P>  <STRONG>3、Write方法</STRONG></P><P>  该方法把数据发送到客户端浏览器,如:  <BR>&lt;%Response.write "Hello,world!"%&gt; </P><P><STRONG>  4、Redirect方法</STRONG></P><P>  该方法使浏览器可以重新定位到另一个URL上,这样,当客户发出Web请求时,客户端的浏览器类型已经确定,客户被重新定位到相应的页面。如:<BR>&lt;html&gt;<BR>&lt;head&gt;<BR>&lt;title&gt;Redirect示例&lt;/title&gt;<BR>&lt;/head&gt;<BR>&lt;body&gt;<BR>&lt;form aciton="formjump.asp" method="post"&gt;<BR>&nbsp; &lt;select name="wheretogo"&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;option selected value="fun"&gt;Fun&lt;/option&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;option value="news"&gt;News&lt;/option&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;option value="sample"&gt;Sample&lt;/option&gt;<BR>&nbsp; &lt;/select&gt;<BR>&lt;input type=submit name="jump" value="Jump"&gt;<BR>&lt;/form&gt;<BR>&lt;/body&gt;<BR>&lt;/html&gt; <BR>  以上是提交的表单,下面是处理表单的文件formjump.asp:<BR>&lt;%response.buff=true%&gt;<BR>&lt;html&gt;<BR>&lt;head&gt;<BR>&lt;title&gt;Redirect示例&lt;/title&gt;<BR>&lt;/head&gt;<BR>&lt;body&gt;<BR>&lt;%<BR>thisurl="<U>http://www.webjx.com/</U>"<BR>where=Request.form("wheretogo")<BR>Select Case where<BR>&nbsp; case "fun"<BR>&nbsp;&nbsp;&nbsp;&nbsp; response.redirect thisurl &amp; "/fun/default.asp"<BR>&nbsp; case "news"<BR>&nbsp;&nbsp;&nbsp;&nbsp; response.redirect thisurl &amp; "/news/default.asp"<BR>&nbsp; case "sample"<BR>&nbsp;&nbsp;&nbsp;&nbsp; response.redirect thisurl &amp; "/sample/default.asp"<BR>End Select<BR>%&gt;<BR>&lt;/body&gt;<BR>&lt;html&gt; <BR>  这个例子当用户选择了以后,按"Jump"按钮提交表单,服务器接到申请后调用formjump.asp判断后定位到相应的URL。不过这里有一点要注意,HTTP标题已经写入到客户浏览器,任何HTTP标题的修改必须在写入页内容之前,遇到这种问题时,可以如下做:<BR>在文件的开始&lt;@ Language=..&gt;后写:&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp; Response.Buffer=True<BR>在结尾定:<BR>&nbsp;&nbsp; Response.Flush<BR>  这里Flush是Response的一个方法,它必须是Buffer属性设置为True时才能使用,否则会产生一个运行模式错误。另外一个Clear方法也是用于清除被缓存的页面,同样要Buffer属性设置为True时才能使用。</P><P><STRONG>  5、End方法</STRONG></P><P>  该方法用于告知Active Server当遇到该方法时停止处理ASP文件。如果Response对象的Buffer属性设置为True,这时End方法即把缓存中的内容发送到客户并清除冲区。所以要取消所有向客户的输出民,可以先清除缓冲区,然后利用End方法。如:<BR>&lt;%<BR>Response.buffer=true<BR>On error resume next<BR>Err.clear<BR>if Err.number&lt;&gt;0 then<BR>&nbsp; Response.Clear<BR>&nbsp; Response.End<BR>end if<BR>%&gt; </P>
全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-11-25 06:52 , Processed in 0.230593 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team