?? page9.htm
字號:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>向瀏覽器發送內容</title>
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="Microsoft Border" content="none">
</head>
<body background="../../images/exptextb.jpg">
<!-- Spidersoft WebZIP Ad Banner Insert -->
<!-- End of Spidersoft WebZIP Ad Banner Insert-->
<p><font FACE="宋體" size="3"><strong>向瀏覽器發送內容</strong></p>
</font>
<p><font FACE="宋體" SIZE="2">在處理 ASP 腳本時,任何沒有包含在 ASP
定界符或 <SCRIPT>
標記中的文本或圖形都將被簡單地返回給瀏覽器。可以通過使用
Response 對象顯示地把內容發送給瀏覽器。</p>
<p><strong>發送內容</strong></p>
<p>要將內容從 ASP 定界符內部或過程發送給瀏覽器,可以使用 Response
對象的 Write
方法。例如,下面的語句可以根據用戶是否訪問過此頁而發送不同的問候語:</p>
<p><% </p>
<p>If FirstTime = True Then </p>
<p>Response.Write "<H3 ALIGN=CENTER>Welcome to the Overview
Page</H3>"</p>
<p>Else</p>
<p>Response.Write "<H3 ALIGN=CENTER>Welcome Back to the Overview
Page</H3>" </p>
<p>End If </p>
<p>%> </p>
<p>在過程外部,不必使用 Response.Write
將內容送回用戶。不在腳本定界符內部的內容被直接發送給瀏覽器,瀏覽器將其格式化和顯示。例如,下面的腳本過程與上面的腳本輸出相同:</p>
<p><H3 ALIGN=CENTER> </p>
<p><% If FirstTime Then %> </p>
<p>Welcome to the Overview Page. </p>
<p><% Else %> </p>
<p>Welcome Back to the Overview Page. </p>
<p><% End If %> </p>
<p></H3> </p>
<p>當您只需要將輸出返回一次或很方便地向現有 HTML
文本中加入語句時,可使用混合腳本命令和 HTML。當您不想用定界符分隔一條語句或當您想創建返回給瀏覽器的字符串時,可使用
Response.Write。例如,可構建一個文本的字符串,用從一個 HTML
表送回的值創建表格的一行:</p>
<p>Response.Write "<TR><TD>" &
Request.Form("FirstName") _</p>
<p>& "</TD><TD>" & Request.Form("LastName") &
"</TD></TR>"</p>
<p>Request.Form 返回從 HTML 表格(參閱 使用 HTML 表格)發送的值。(&)
字符是 VBScript 字符串連接字符。</p>
<p><strong>設置內容的類型</strong></p>
<p>當 Web
服務器將文件返回給瀏覽器時,會同時告訴瀏覽器文件中包含的內容的類型。這使瀏覽器能夠決定是否它能自己顯示文件或必須調用另一個應用程序。例如,如果網絡服務器返回
Microsoft Excel 表格,則瀏覽器必須調用 Microsoft Excel 的副本顯示此頁。Web
服務器通過將文件的擴展名映射到 MIME 類型表來識別文件類型。</p>
<p>可以使用 Response 對象的 ContentType 屬性為發送給用戶的內容設置
HTTP 內容類型字符串。例如,下面的命令為通道定義設置內容類型:</p>
<p><% Response.ContentType = "application/x-cdf" %> </p>
<p>有關通道的詳細信息,請參閱本主題中的“創建動態通道”。</p>
<p>其他的通用內容類型是 text/plain(用于作為文本內容返回而不是已解釋的
HTML 語句)、text/gif(用于 GIF 圖像)和 video/quicktime(用于 Apple
QuickTime? 格式的電影)。一套標準的 MIME 類型已經定義,另外,Web
服務器或 Web 瀏覽器都支持 MIME 類型。要想查看您的 Microsoft Web
服務器支持哪些內容類型,可使用 Internet 服務管理器打開您的 Web
站點的屬性頁,單擊“HTTP
標題”選項卡,然后單擊“文件類型”選項卡。</p>
<p><strong>重定向瀏覽器</strong></p>
<p>用 Redirect 方法可將瀏覽器重定向到另一個 URL,而不是將內容發送給用戶。例如,如果您想確認用戶是否已從主頁進入了您的應用程序,以便能收到一個客戶
ID,則可以檢驗他們是否有客戶 ID
號;如果沒有,就可以將其重定向到主頁。</p>
<p><%</p>
<p>If Session("CustomerID") = 0 Then</p>
<p>Response.Redirect "homepage.asp" </p>
<p>End If</p>
<p>%> </p>
<p>除非緩沖區已經打開,否則,在任何內容或標題返回給瀏覽器之前,您必須重定向瀏覽器。將
Response.Redirect 語句放在頁的頂部和<HTML>
標記之前可確保沒有任何內容返回給瀏覽器。如果在返回給瀏覽器的內容或標題后使用
Response.Redirect,將看到一個錯誤信息。</p>
<p>如果在頁的中間使用 Response.Redirect,請將其與 Response.Buffer
屬性一起使用,下面的部分將進行解釋。</p>
<p><strong>緩沖內容</strong></p>
<p>默認情況下,Web 服務器返回 HTML 和在處理 ASP
頁時的腳本處理結果。但是,您可以設置 Response 對象的 Buffer
屬性以便在向用戶發送任何內容之前,先處理頁上的所有的服務器腳本命令。</p>
<p>可以使用緩沖技術來確定在頁處理過程中的某個點,而您并不想將該點之前的內容發送給用戶。也可以用
Response 對象的 Redirect 方法將用戶重定向到另一頁,或者用 Response
對象的 Clear
方法清除緩沖區并將不同的內容發送給用戶。下面的例子使用了以上兩種方法。</p>
<p><% </p>
<p>'Turn on buffering. This statement must appear before the <HTML> tag.</p>
<p>Response.Buffer = True %></p>
<p><html></p>
<p><body></p>
<p>.</p>
<p>.</p>
<p>.</p>
<p><%</p>
<p>If Request("FName") = "" Then</p>
<p>Response.Clear</p>
<p>Response.Redirect "/samples/test.html"</p>
<p>Else</p>
<p>Response.Write Request("FName")</p>
<p>End If</p>
<p>%></p>
<p></body></p>
<p></html></p>
<p>也可以使用 Response.Buffer 避免 Web 服務器在腳本修改 HTTP
標題之前將其返回。有些屬性和方法,例如 Response.Expires 和
Response.Redirect 可修改 HTTP 標題。</p>
<p>當在腳本中設置 Buffer 屬性并且沒有調用 Flush
方法時,服務器將保持用戶發出的 Keep-Alive
請求。養成這樣的腳本編寫習慣有益于提高服務器的性能,因為,服務器不必為每一個用戶請求創建新的連接(假定服務器、用戶和任何代理服務器都支持
Keep-Alive
要求)。但是,這種方法的一個潛在的不利因素是:在用戶處理完當前的
asp
文件的所有的腳本之前,緩沖區不顯示任何響應給用戶。對于較長的和較復雜的腳本,用戶可能要被迫等待很長一段時間才能看到這一頁。</p>
<p>默認情況下,緩沖區對于 ASP 應用程序是關閉的。可以使用 Internet
服務管理器為整個 ASP 應用程序打開緩沖區。詳細信息,請參閱 配置
ASP 應用程序。</p>
<p><strong>允許代理服務器緩存頁</strong></p>
<p>通過代理服務器,應用程序可以發送頁給用戶。代理服務器
代替用戶瀏覽器從 Web 站點請求網頁。代理服務器緩存 HTML
頁以便相同頁的重復請求能夠快速有效地返回給瀏覽器。代理服務器執行請求并緩存網頁,并減輕網絡和
Web 服務器的負荷。</p>
<p>盡管緩存對 HTML 頁都能很好運行,但對包含動態生成信息的 ASP
頁則不盡人意。例如,報告股市行情或顯示大量業務的存貨清單需要提供即時信息。一小時前的信息對目前來講是很不準確的。如果應用程序返回個人的信息,例如,自定義的主頁,希望用戶不能看到另一個用戶的個人信息。</p>
<p>默認情況下,ASP 命令代理服務器自己不能緩存 ASP
頁(盡管緩存圖像、位圖、小型應用程序,和其他緩存頁上的參考項)??梢允褂?
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -