常用Response對(duì)象的使用詳解

字號(hào):


    每一個(gè)程序語(yǔ)言或開(kāi)發(fā)工具都有一定的函數(shù)與用戶進(jìn)行溝通,Asp同樣如此。在Asp中負(fù)責(zé)將信息傳遞給用戶的對(duì)象就是Response對(duì)象。 Response對(duì)象用于動(dòng)態(tài)響應(yīng)客戶端請(qǐng)求(Request),并將動(dòng)態(tài)生成的響應(yīng)結(jié)果返回到客戶端瀏覽器中,使用Response對(duì)象可以直接發(fā)送信息給瀏覽器、重定向?yàn)g覽器到另一個(gè)URL或設(shè)置cookie的值等等。Response對(duì)象在asp編程中非常廣泛,也是一種非常好用的工具。下面我們來(lái)具體看看Response對(duì)象:
    語(yǔ)法:
    Response.collection|property|method
    一、集合
    Response對(duì)象只有一個(gè)集合--Cookies,Cookies數(shù)據(jù)集合允許將數(shù)據(jù)設(shè)置在客戶端的瀏覽器中。若指定的cookie不存在,則創(chuàng)建它。若存在,則自動(dòng)更新數(shù)據(jù)。
    語(yǔ)法:Response.Cookies(Cookie)[Key.Attribute]
    這里的cookie是指定cookie的名稱。而如果指定了key,則該cookie就是一個(gè)字典。attribute指定cookie自身的有關(guān)信息。attribute參數(shù)可以是下列之一:
    Domain只寫。若被指定,則cookie將被發(fā)送到對(duì)該域的請(qǐng)求中去。
    Expires只寫。指定cookie的過(guò)期日期。為了在會(huì)話結(jié)束后將cookie存儲(chǔ)在客戶端磁盤上,必須設(shè)置該日期。若此項(xiàng)屬性的設(shè)置未超過(guò)當(dāng)前日期,則在任務(wù)結(jié)束后cookie將到期。
    HasKeys只讀。指定cookie是否包含關(guān)鍵字。
    Path只寫。若被指定,則cookie將只發(fā)送到對(duì)該路徑的請(qǐng)求中。如果未設(shè)置該屬性,則使用應(yīng)用程序的路徑。
    Secure只寫。指定Cookie是否安全。
    二、方法
    Response.AddHeaderName,Value
    向應(yīng)答中添加一個(gè)新的HTML標(biāo)題。Name為新HTML標(biāo)題的名稱。Value為該頭變量的值。你可以添加任何名稱和任何值的HTML標(biāo)題。它并不替代現(xiàn)有的同名標(biāo)題。一旦標(biāo)題被添加,將不能刪除。
    Response.AppendToLogString
    向Web服務(wù)器的日志條目的末尾添加一字符串。String為要添加到日志文件中的字符串。
    Response.BinaryWriteData
    該方法可以不經(jīng)任何字符轉(zhuǎn)換就將制定的信息寫到HTTP輸出,主要用于寫非字符串信息(如客戶端應(yīng)用程序所需的二進(jìn)制數(shù)據(jù)等)。Data是要發(fā)送的數(shù)據(jù)。
    Response.Clear
    刪除緩沖區(qū)的所有HTML輸出,但只刪除響應(yīng)正文而不刪除響應(yīng)標(biāo)題??梢杂迷摲椒ㄌ幚礤e(cuò)誤情況。需要注意的是,如果Response.Buffer設(shè)置為True,則該方法將導(dǎo)致運(yùn)行是錯(cuò)誤。
    Response.End
    強(qiáng)迫Web服務(wù)器停止執(zhí)行更多的腳本,并發(fā)送當(dāng)前結(jié)果,文件中剩余的內(nèi)容將不被處理。如果Response.Buffer設(shè)置為True,則調(diào)用Response.end將緩沖輸出。
    Response.Flush
    對(duì)于一個(gè)緩沖的回應(yīng),發(fā)送所有的緩沖信息。如果Response.Buffer設(shè)置為True,則該方法將導(dǎo)致運(yùn)行是錯(cuò)誤。
    Response.RedirectURL
    將客戶端的瀏覽器重定向到一個(gè)新的Internet地址。Url為新網(wǎng)頁(yè)的Internet地址。
    Response.WriteVariant
    Response.Write是Response對(duì)象最常用的方法,該方法可以向?yàn)g覽器發(fā)送字符串。Variant是一字符串或一個(gè)具有字符串值的變量。
    三、屬性
    Response.Buffer
    緩沖一ActiveServerPage?;貞?yīng)只到某一頁(yè)結(jié)束或Response.Flush或Response.End方法調(diào)用時(shí)才發(fā)送出去。服務(wù)器將輸出送給客戶端后就不能再設(shè)置Buffer屬性。
    Response.CacheControl
    指明是否Proxy服務(wù)器能緩存ActiveServerPage。缺省時(shí),其值為FALSE。當(dāng)設(shè)置其屬性為Public時(shí),Proxy服務(wù)器可以緩沖由Asp產(chǎn)生的輸出。
    Response.CharSet(Charsetname)
    將字符集名稱(如GB)附加到Response對(duì)象中content-type標(biāo)題的后面,用來(lái)設(shè)置web服務(wù)器響應(yīng)給客戶端的文件字符編碼。一個(gè)可能的值為“ISO_LATIN_1”。
    Response.ContentType
    指明回應(yīng)內(nèi)容的類型??赡艿闹禐閠ext/plain和image/GIF,默認(rèn)值text/HTML。
    Response.Expires
    瀏覽器可以緩存當(dāng)前頁(yè)的時(shí)間長(zhǎng)度,以分鐘為單位。
    Response.ExpiresAbsolute
    瀏覽器不能再緩存當(dāng)前頁(yè)的日期和時(shí)間。在未到期之前,可以返回。如果未指定時(shí)間,該主頁(yè)在當(dāng)天午夜到期;如果未指定日期,則到當(dāng)天指定時(shí)間到期。
    True/False=Response.IsClientConnected
    屬性為只讀,指明自上次調(diào)用Response.Write之后,客戶端是否仍然和服務(wù)器連接。該屬性允許用戶在客戶端和服務(wù)器沒(méi)有聯(lián)接的情況下有更多的控制。例如,在從客戶端提出請(qǐng)求起到服務(wù)器做出相應(yīng),其間要用去很長(zhǎng)一段時(shí)間的情況下,這就可能有助于確保在繼續(xù)處理腳本之前客戶端仍是連通的。具有值TRUE或FALSE。
    Response.PICS(PICS字符串)
    用于添加網(wǎng)頁(yè)的PICS等級(jí)。PICS級(jí)別指明某一網(wǎng)頁(yè)的內(nèi)容級(jí)別,比如暴力或色情的程度等。
    Response.Status="狀態(tài)描述字符串"
    用來(lái)設(shè)置Web服務(wù)器要響應(yīng)的狀態(tài)行的值。