(转)response对象的9个属性方法,你知道几个?

转:ASP编程入门进阶(五):内置对象Response    
  作者:cnbruce 来自:蓝色理想  
   
  通过对Request对象的学习,可以了解到,Request对象是服务器端用来获取客户端的信息的。  
  但作为服务器和客户端进行交互,是不是还缺少服务器端向客户端发送信息呢?对象Response正是担任此责任。  
  负责将信息传递给用户的对象就是Response了,它可动态地响应客户端的请求,并将动态生成的响应结果返回给客户端浏览器。  
  一,Response.write  
  在Response中write方法是使用最频繁的一个了,write就是写:将指定的字符串写到当前的   HTTP   输出。  
   
  1,write.asp  
  <%  
  response.write("hello,world"&"<br>")  
  Randomize  
  response.write   "任意数是"&rnd()&"<br>"  
  %>  
   
  response.write后面为所显示的信息,可以用括号包含,也可以直接书写(注意和response.write之间有空格)。  
  书写的字符串信息或者HTML代码相关,用引号包含;而ASP本身的函数或变量则不需要,直接用即可。  
  并且无论字符串信息、HTML代码、函数还是变量之间进行连接都是采用&号(针对vbscript)  
   
  以上遇到一个随机函数rnd(),该函数返回一个小于   1   但大于或等于   0   的值。  
  需要注意的是在调用   Rnd   之前,先使用无参数的   Randomize   语句初始化随机数生成器,该生成器具有基于系统计时器的种子。  
  若缺少Randomize,则无法继续生成随机种子。  
   
  下面一个利用随机函数的例子,产生随机背景颜色效果:  
  运行代码  
  <script   language=vbs>  
  Randomize                                                                         '首先Randomize产生随机种子  
  suij=rnd()                                                                       '接着将函数值赋变量suij  
  suij=replace(suij,".","9")                                       '然后对变量suij中小数点符号转换为数字9  
  suij=left(suij,6)                                                         '再取变量中的左6位  
  document.write   "<body   bgcolor=#"&suij&">"         '最后应用到背景颜色中去  
  </script>  
   
  当然要产生指定范围的随机整数,请使用以下公式:    
  Int((upperbound   -   lowerbound   +   1)   *   Rnd   +   lowerbound)  
  这里,   upperbound   是此范围的上界,而   lowerbound   是此范围内的下界。  
  运行代码  
  <script   language=vbs>  
  Do   Until   choose   =   vbNo  
        value   =   Int((41   *   Rnd)   +   60)         '产生   60   到   100   之间的随机数。  
        msgbox   value  
        choose   =   MsgBox   ("Roll   again?   ",   vbYesNo)  
  Loop  
  </script>  
  随机函数在做考试系统的时候非常有用,当然你也可以用来自己摇奖,拿个头彩也分点我就行了:)  
   
  二,Response.end  
  这是Response常用的一种方法,使   Web   服务器停止处理脚本并返回当前结果,文件中剩余的内容将不被处理。  
  主要放在一页多功能的ASP页中,为让程序运行到此,抑或往下的程序没必要再执行显示……  
   
  2,end.asp  
   
  <%response.write   now()  
  response.end                         '程序执行显示到此结束  
  response.write   rnd()%>  
  三,Response.clear  
  该方法主要作用是清除缓冲区中的所有   HTML   输出,但该方法只清除响应正文而不清除响应标题。  
  该方法和end方法似相反,end是到此结束返回上面的结果,而clear却是清除上面的执行,然后只返回下面的结果。  
   
  3,clear.asp  
   
  <%response.write   now()  
  response.clear                       '以上程序到此全被清除  
  response.write   rnd()%>  
   
  下面通过一个例子来仔细看看end   and   clear  
   
  4,end2clear.asp  
  <%  
  filepath=request.servervariables("script_name")  
  user=Request.Form("username")  
  pwd=Request.Form("password")  
  %>  
   
  <form   method="POST"   action="<%=filepath%>">  
  name:<input   type="text"   name="username"><br>  
  pwd:<input   type="password"   name="password"><br>  
  <input   type="submit"   value="submit">  
  </form>  
   
  <%  
  If   user="cnbruce"   and   pwd="cnbruce"   Then          
        response.write   "采用clear方法,上面的程序结果将清除。"  
        response.clear           '   清空存储在缓存中的页面  
  Else  
        response.write   "采用end方法,下面的程序将停运。"  
        Response.End   '   立即停止脚本处理,并将缓存中的页面输出  
  End   If  
  %>  
  如果你只看到“刷新”链接就表明clear方法已经生效<br>  
  <a   href="<%=filepath%>">刷新</a>   
   
  以上程序中,当输入用户名和密码同为cnbruce的时候会发现clear方法的处理结果,反之是另外一个效果。  
   
  四,Response.redirect  
  Redirect   方法是让浏览器立即重定向到程序指定的URL地址。这在根据客户的不同响应,为不同的客户指定不同的页面,或根据不同的情况指定不同的页面时,显得非常重要。  
  该方法是立即生效的,在其后的脚本都不执行。  
   
  5,redirect.asp  
   
  <%response.redirect("http://www.cnbruce.com/")%>  
   
  以上四则运用属于Response对象的几个比较重要的方法:write、end、clear、redirect等当然方法还有:AddHeader、AppendToLog、BinaryWrite、Flush……  
  早说过,一个ASP对象除了对象方法外,还有对象属性  
   
  那response对象的属性有哪些呢?  
   
  五,Response.ContentType  
  ContentType   属性指定服务器响应的   HTTP   内容类型。如果未指定   ContentType,默认为   text/html。  
   
  6,contenttype.asp(非text/html的)  
   
  <%   Response.ContentType   =   "text/HTML"   %>  
  <%   Response.ContentType   =   "image/GIF"   %>  
  <%   Response.ContentType   =   "image/JPEG"   %>  
  <%   Response.ContentType   =   "text/plain"   %>  
  <%   Response.ContentType   =   "image/JPEG"   %>  
   
  六,Response.charset  
  Charset   属性将字符集名称附加到   Response   对象中   content-type   标题的后面,用来设置服务器响应给客户端的文件字符编码。  
   
  7,charset.asp  
   
  <%   Response.charset   =   "big5"   %>  
  中文显示,但采用的big5繁体的编码,所以看到的是乱码。  
   
  当然Response.ContentType和Response.charset应用得比较少了。直接在head头部属性里面添加就OK了。  
   
  七,Response.expires  
  该属性指定了在浏览器上缓冲存储的页,距过期还有多少时间。  
  如果用户在某个页过期之前又回到此页,就会显示缓冲区中的页面。  
  但若设置   response.expires=0,则可使缓存的页面立即过期。  
  这是一个较实用的属性,当客户通过   ASP   的登陆页面进入   WEB   站点后,应该利用该属性使登陆页面立即过期,以确保安全。  
  引用一个 经典的例子  
   
  8,expires.asp  
   
  <%  
  Response.Expires   =   0    
  Response.Expiresabsolute   =   Now()   -   1    
  Response.AddHeader   "pragma","no-cache"    
  Response.AddHeader   "cache-control","private"    
  Response.CacheControl   =   "no-cache"    
  %>    
   
  八,Response.status  
  设置服务器要响应的状态行的值。Response.status="状态描述字符串",字符串可以为一个三位整数或一串说明文字组成,但必须防在<html>之前。  
   
  9,status.asp  
  Response.buffer=true  
   
  对于Response对象的属性和方法先到这里,剩下一个数据集合,即cookie。  
  继续看cookies讲座吧。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: HttpServletResponse response是Java Servlet API中的一个类,用于处理HTTP响应。当你使用`new`关键字创建一个新的`HttpServletResponse`对象时,你可以在你的Java Web应用程序中使用该对象来设置HTTP响应的各种属性,例如响应状态码、响应头信息、响应体内容等等。这个对象通常是在Servlet的doGet()或doPost()等方法中使用,通过该方法的参数HttpServletRequest request和HttpServletResponse response来处理客户端的请求并返回响应。 ### 回答2: HttpServletResponse response是Java Servlet中的一个对象,用于向客户端发送HTTP响应。通过使用response对象,我们可以设置和获取响应的各种属性,如响应头信息、响应状态码、响应体内容等。 使用new关键字可以创建一个HttpServletResponse对象的实例,主要有以下几个步骤: 1. 导入相关的包:我们需要在Java代码中导入javax.servlet.http包,以便使用HttpServletResponse类。 2. 创建response对象:可以通过使用new关键字,调用HttpServletResponse的无参构造方法,来创建一个空的response对象。 3. 设置响应头信息:可以使用response对象的setHeader()方法,来设置响应头的键值对。 4. 设置响应状态码:可以使用response对象的setStatus()方法,来设置HTTP响应的状态码。 5. 设置响应体内容:可以使用response对象的getWriter()方法,获取一个PrintWriter对象,通过该对象可以写入要返回给客户端的内容。 6. 发送响应:在设置完所有的响应属性后,可以使用response对象的flushBuffer()方法来将响应发送给客户端。 综上所述,通过new关键字创建HttpServletResponse对象实例,可以方便地操作和发送HTTP响应。在实际应用中,我们可以根据需要设置不同的响应属性,以满足客户端的需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值