欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

[點晴永久免費OA]ASP基礎入門第七篇(ASP內建對象Response)

admin
2022年6月21日 12:27 本文熱度 947

下面,我們開始學習 ASP 的另一個內建對象 Response。

與 Request 是獲取客戶端 HTTP 信息相反 ,Response 對象是用來控制發送給用戶的信息,包括直接發送信息給瀏覽器、重定向瀏覽器到另一個 URL 或設置 cookie 的值。

語法:Response.collection|property|method

一、屬性

1、Buffer

   Buffer 屬性指示是否緩沖頁輸出。當緩沖頁輸出時,只有當前頁的所有服務器腳本處理完畢或者調用了 Flush 或 End 方法后,服務器才將響應發送給客戶端瀏覽器,服務器將輸出發送給客戶端瀏覽器后就不能再設置 Buffer 屬性。因此應該在 .asp 文件的第一行調用 Response.Buffer。

2、Charset

   Charset 屬性將字符集名稱附加到 Response 對象中 content-type 標題的后面。對于不包含 Response.Charset 屬性的 ASP 頁,content-type 標題將為 :content-type:text/html。

   我們可以在 .asp 文件中指定 content-type 標題,如 :

   <% Response.Charset="gb2312") %>

   將產生以下結果 :

   content-type:text/html; charset=gb2312

   注意,無論字符串表示的字符集是否有效,該功能都會將其插入 content-type 標題中。且如果某個頁包含多個含有 Response.Charset 的標記,則每個 Response.Charset 都將替代前一個 CharsetName。這樣,字符集將被設置為該頁中 Response.Charset 的最后一個實例所指定值。

3、ContentType

   ContentType 屬性指定服務器響應的 HTTP 內容類型。如果未指定 ContentType,默認為 text/HTML。

4、Expires

   Expires 屬性指定了在瀏覽器上緩沖存儲的頁距過期還有多少時間。如果用戶在某個頁過期之前又回到此頁,就會顯示緩沖區中的頁面。如果設置 response.expires=0,則可使緩存的頁面立即過期。這是一個較實用的屬性,當客戶通過 ASP 的登陸頁面進入 WEB 站點后,應該利用該屬性使登陸頁面立即過期,以確保安全。

5、ExpiresAbsolute

   與 Expires 屬性不同 ExpiresAbsolute 屬性指定緩存于瀏覽器中的頁面的確切到期日期和時間。在未到期之前,若用戶返回到該頁,該緩存中的頁面就顯示。如果未指定時間,該主頁在當天午夜到期。如果未指定日期,則該主頁在腳本運行當天的指定時間到期。如下示例指定頁面在 1998 年 12 月 10 日上午 9:00 分 30 秒到期。

   <% Response.ExpiresAbsolute=#Dec 12,1998 9:00:30# %>

二、方法

1、Clear

   可以用 Clear 方法清除緩沖區中的所有 HTML 輸出。但 Clear 方法只清除響應正文而不清除響應標題。可以用該方法處理錯誤情況。但是如果沒有將 Response.Buffer 設置為 TRUE,則該方法將導致運行時錯誤。

2、End

   End 方法使 Web 服務器停止處理腳本并返回當前結果。文件中剩余的內容將不被處理。如果 Response.Buffer 已設置為 TRUE,則調用 Response.End 將緩沖輸出。

3、Flush

   Flush 方法立即發送緩沖區中的輸出。如果沒有將 Response.Buffer 設置為 TRUE,則該方法將導致運行時錯誤。

4、Redirect

   Redirect 方法使瀏覽器立即重定向到程序指定的 URL。這也是一個我們經常用到方法,這樣程序員就可以根據客戶的不同響應,為不同的客戶指定不同的頁面或根據不同的情況指定不同的頁面。一旦使用了 Redirect 方法任何在頁中顯式設置的響應正文內容都將被忽略。然而,此方法不向客戶端發送該頁設置的其他 HTTP 標題,將產生一個將重定向 URL 作為鏈接包含的自動響應正文。Redirect 方法發送下列顯式標題,其中 URL 是傳遞給該方法的值。如:

   <% Response.redirect("www.gxlsystem.com") %>

5、Write

   Write 方法是我們平時最常用的方法之一,它是將指定的字符串寫到當前的 HTTP 輸出。

三、集合

   Response 對象只有一個集合 --Cookie

   Cookies 集合設置 cookie 的值。若指定的 cookie 不存在,則創建它。若存在,則設置新的值并且將舊值刪去。

   語法

   Response.Cookies(cookie)[(key)|.attribute]=value

   這里的 cookie 是指定 cookie 的名稱。而如果指定了 key,則該 cookie 就是一個字典。attribute 指定 cookie 自身的有關信息。attribute 參數可以是下列之一 :

   Domain 若被指定,則 cookie 將被發送到對該域的請求中去。

   Expires 指定 cookie 的過期日期。為了在會話結束后將 cookie 存儲在客戶端磁盤上,必須設置該日期。若此項屬性的設置未超過當前日期,則在任務結束后 cookie 將到期。

   HasKeys 指定 cookie 是否包含關鍵字。

   Path 若被指定,則 cookie 將只發送到對該路徑的請求中。如果未設置該屬性,則使用應用程序的路徑。

   至此,我們已經學習的 Response 對象的所有屬性、方法和集合的理論知識,下面作者將給大家演示一段簡單的程序,通過實踐讓大家加深理解。先將以下程序剪貼到記事簿中,并保存為 asp7.asp。  

<%
  Dim user
  Dim flag
  Dim pwd
  Dim say
  Response.buffer=true ' 開啟緩沖頁面功能
  Response.ContentType="text/HTML"
  Response.Charset="gb2312"
  user=Request.Form("username")
  pwd=Request.Form("password")
  say=Request.QueryString("say")
%>
  <form method="POST" action="asp7.asp">
  <p> 用戶名 :<input type="text" name="username" size="12"><br>
  口 令 :<input type="password" name="password" size="12"><br>
  <input type="submit" value=" 提交 " name="B1"><input type="reset" value=" 取消 " name="B2"></p></form>
  <%
  If say=1 then
    Response.Write " 歡迎書生大駕光臨 !"
  End If
  If say > 1 then
    Response.Write " 歡迎再次光臨書生的 ASP 網站 !"
  End If
  If user="Adm" and pwd="shusheng" Then
    Response.Expires=1 ' 設置該頁面在瀏覽器的緩沖中存儲 1 分鐘后過期。
    flag=1
  ElseIf user="guest" and pwd="guest" Then
    Response.Expires=0 ' 使緩存的頁面立即過期。
    Response.Clear ' 清空存儲在緩存中的頁面
    flag=2
  ElseIf user="vip" and pwd="vip" Then
    Response.Write " 歡迎 VIP 光臨書生的 ASP 網站 "
    flag=3
  Else
    flag=0
    Response.End ' 立即停止腳本處理,并將緩存中的頁面輸出
  End If
   Response.write "<p><a href='asp7b.asp?flag="&flag&"'> 動態網站設計十八般武藝 --ASP 篇 (7) 實踐練習 </a></p>" ' 將變量 flag 的值傳送給 asp7b.asp
   %>
   <p> 動態網站設計十八般武藝 --ASP 篇 (7) 實踐練習 </p>

    再將以下程序保存為 asp7b.asp。
   <%
   Dim saysay=Request.QueryString("flag") 
  select case say
   case "1"
     Response.Redirect "asp7.asp?say=1" 
  case "2"
     Response.Redirect "asp7.asp?say=2" 
  case "3"
     Response.Redirect "asp7.asp?say=3" 
  case "0"
     Response.Redirect "asp7.asp?say=0" 
  End select
   %>

   將這兩個程序放在有執行權限的 WEB 虛擬目錄下,并以 http 方式訪問 asp7.asp。在這兩個程序中我們充分運用了至今為止所學過的兩個 ASP 內建對象 :Request 和 Response。當你第一次訪問 asp7.asp 文件時,頁面上出現一個 Form 并提示輸入用戶名和口令,如果你輸入用戶名 :Adm、口令 :shusheng, 則會出現如下頁面 :
<img src='http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10111/pic/2001124_asp_13.gif'>
這是為什么呢?因為我們設置了頁面緩存,當使用 guest 登陸時,判斷程序自動清空其之前所有存儲在緩存中的頁面,而僅將其后腳本程序執行的結果顯示出來。

   那為什么第一次登陸asp7.asp 頁面時僅僅只顯示一個 Form 對話框呢?因為此時程序判斷到用戶既非 Adm, 也不是 guest 和 vip,所以執行 Response.End, 立即將存儲在緩存中的 Form 顯示出來,并停止其后的一切腳本處理,包括純 HTML 代碼的顯示。

   無論你是用 Adm 還是 guest 或 vip 登陸該頁面你都可以看到一個超鏈,該超鏈指向文件 asp7b.asp,當我們點擊該超鏈時,asp7.asp 將變量 flag 的值作為參數發送給 asp7b.asp, 而后者則根據該參數的值來做出判斷,并依據不同情況使用 Response.Redirect 再強行返回 asp7.asp, 并也將一個變量 say 的值作為參數發送給 asp7.asp。如此一來,asp7.asp 又會根據此參數來做出不同的反應。

   大家現在都看到了我們僅僅用了兩個很簡單的程序,就可以做到對同一個頁面的多種不同顯示結果,這正是 ASP 的魅力所在,各位可以以此示范程序為基礎,來進行一些改動,以熟練掌握我們所學的這兩個內建對象。


該文章在 2022/6/21 14:42:07 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved