电竞比分网-中国电竞赛事及体育赛事平台

分享

Response 對(duì)象

 張青 2008-04-21

 Response對(duì)象用于向客戶端瀏覽器發(fā)送數(shù)據(jù),用戶可以使用該對(duì)象將服務(wù)器的數(shù)據(jù)以HTML的格式發(fā)送到用戶端的瀏覽器,它與Request組成了一對(duì)接收、發(fā)送數(shù)據(jù)的對(duì)象,這也是實(shí)現(xiàn)動(dòng)態(tài)的基礎(chǔ)。下面介紹它常用的屬性和方法。

  1、Buffer屬性  
  該屬性用于指定頁面輸出時(shí)是否要用到緩沖區(qū),默認(rèn)值為False。當(dāng)它為True時(shí),直到整個(gè)Active Server Page執(zhí)行結(jié)束后才會(huì)將結(jié)果輸出到瀏覽器上。如:
<%Response.Buffer=True%>
<html>
<Head>
<title>Buffer示例</title>
</head>
<body>
<%
for i=1 to 500
response.write(i & "<br>")
next
%>
</body>
</html>
  這頁執(zhí)行時(shí),整個(gè)主頁的所有內(nèi)容會(huì)同時(shí)顯示在瀏覽器上,這個(gè)主頁會(huì)存在緩存區(qū)中直到腳本執(zhí)行結(jié)束。

  2、Expires屬性
  該屬性用于設(shè)置瀏覽器緩存頁面的時(shí)間長(zhǎng)度(單位為分),必須在服務(wù)器端刷新。通過如下設(shè)置:<%Response.Expires=0%>
  通過在ASP文件中加入這一行代碼,要求每次請(qǐng)求是刷新頁面,因?yàn)镽esponse一收到頁面就會(huì)過期。

  3、Write方法
  該方法把數(shù)據(jù)發(fā)送到客戶端瀏覽器,如:<%Response.write "Hello,world!"%>

  4、Redirect方法
  該方法使瀏覽器可以重新定位到另一個(gè)URL上,這樣,當(dāng)客戶發(fā)出Web請(qǐng)求時(shí),客戶端的瀏覽器類型已經(jīng)確定,客戶被重新定位到相應(yīng)的頁面。如:
<html>
<head>
<title>Redirect示例</title>
</head>
<body>
<form aciton="formjump.asp" method="post">
<select name="wheretogo">
<option selected value="fun">Fun</option>
<option value="news">News</option>
<option value="sample">Sample</option>
</select>
<input type=submit name="jump" value="Jump">
</form>
</body>
</html>
  以上是提交的表單,下面是處理表單的文件formjump.asp:
<%response.buff=true%>
<html>
<head>
<title>Redirect示例</title>
</head>
<body>
<%
thisurl="http://jefenet."
where=Request.form("wheretogo")
Select Case where
case "fun"
response.redirect thisurl & "/fun/default.asp"
case "news"
response.redirect thisurl & "/news/default.asp"
case "sample"
response.redirect thisurl & "/sample/default.asp"
End Select
%>
</body>
<html>
  這個(gè)例子當(dāng)用戶選擇了以后,按"Jump"按鈕提交表單,服務(wù)器接到申請(qǐng)后調(diào)用formjump.asp判斷后定位到相應(yīng)的URL。不過這里有一點(diǎn)要注意,HTTP標(biāo)題已經(jīng)寫入到客戶瀏覽器,任何HTTP標(biāo)題的修改必須在寫入頁內(nèi)容之前,遇到這種問題時(shí),可以如下做:
在文件的開始<@ Language=..>后寫:Response.Buffer=True
在結(jié)尾定:Response.Flush
  這里Flush是Response的一個(gè)方法,它必須是Buffer屬性設(shè)置為True時(shí)才能使用,否則會(huì)產(chǎn)生一個(gè)運(yùn)行模式錯(cuò)誤。另外一個(gè)Clear方法也是用于清除被緩存的頁面,同樣要Buffer屬性設(shè)置為True時(shí)才能使用。

  5、End方法
  該方法用于告知Active Server當(dāng)遇到該方法時(shí)停止處理ASP文件。如果Response對(duì)象的Buffer屬性設(shè)置為True,這時(shí)End方法即把緩存中的內(nèi)容發(fā)送到客戶并清除沖區(qū)。所以要取消所有向客戶的輸出民,可以先清除緩沖區(qū),然后利用End方法。如:
<%
Response.buffer=true
On error resume next
Err.clear
if Err.number<>0 then
Response.Clear
Response.End
end if
%>

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多