在處理 asp 腳本時,任何沒有包含在 ASP 定界符或 <SCRipT> 標記中的文本或圖形都將被簡單地返回給瀏覽器。可以通過使用 Response 對象顯示地把內容發送給瀏覽器。
發送內容 要將內容從 ASP 定界符內部或過程發送給瀏覽器,可以使用 Response 對象的 Write 方法。例如,下面的語句可以根據用戶是否訪問過此頁而發送不同的問候語:
<% If FirstTime = True Then Response.Write "<H3 ALIGN=CENTER>Welcome to the Overview Page</H3>" Else Response.Write "<H3 ALIGN=CENTER>Welcome Back to the Overview Page</H3>" End If %> 在過程外部,不必使用 Response.Write 將內容送回用戶。不在腳本定界符內部的內容被直接發送給瀏覽器,瀏覽器將其格式化和顯示。例如,下面的腳本過程與上面的腳本輸出相同:
<H3 ALIGN=CENTER> <% If FirstTime Then %> Welcome to the Overview Page. <% Else %> Welcome Back to the Overview Page. <% End If %> </H3> 當您只需要將輸出返回一次或很方便地向現有 HTML 文本中加入語句時,可使用混合腳本命令和 HTML。當您不想用定界符分隔一條語句或當您想創建返回給瀏覽器的字符串時,可使用 Response.Write。例如,可構建一個文本的字符串,用從一個 HTML 表送回的值創建表格的一行:
設置內容的類型 當 Web 服務器將文件返回給瀏覽器時,會同時告訴瀏覽器文件中包含的內容的類型。這使瀏覽器能夠決定是否它能自己顯示文件或必須調用另一個應用程序。例如,如果網絡服務器返回 Microsoft Excel 表格,則瀏覽器必須調用 Microsoft Excel 的副本顯示此頁。Web 服務器通過將文件的擴展名映射到 MIME 類型表來識別文件類型。
其他的通用內容類型是 text/plain(用于作為文本內容返回而不是已解釋的 HTML 語句)、text/gif(用于 GIF 圖像)和 video/quicktime(用于 Apple QuickTime® 格式的電影)。一套標準的 MIME 類型已經定義,另外,Web 服務器或 Web 瀏覽器都支持 MIME 類型。要想查看您的 Microsoft Web 服務器支持哪些內容類型,可使用 Internet 服務管理器打開您的 Web 站點的屬性頁,單擊“HTTP 標題”選項卡,然后單擊“文件類型”選項卡。
重定向瀏覽器 用 Redirect 方法可將瀏覽器重定向到另一個 URL,而不是將內容發送給用戶。例如,如果您想確認用戶是否已從主頁進入了您的應用程序,以便能收到一個客戶 ID,則可以檢驗他們是否有客戶 ID 號;如果沒有,就可以將其重定向到主頁。
<% If session("CustomerID") = 0 Then Response.Redirect "homepage.asp" End If %> 除非緩沖區已經打開,否則,在任何內容或標題返回給瀏覽器之前,您必須重定向瀏覽器。將 Response.Redirect 語句放在頁的頂部和<HTML> 標記之前可確保沒有任何內容返回給瀏覽器。如果在返回給瀏覽器的內容或標題后使用 Response.Redirect,將看到一個錯誤信息。
創建動態通道 Internet Explorer 4.0 有一個新的特性,Web 規劃人員可以使用該屬性將帶有公用主題的 Web 頁并入一個通道。在瀏覽器中,通道被顯示在通道標題欄上;用戶通過單擊圖標訪問通道。通道在后臺自動更新;用戶不必訪問站點就可以在自己的瀏覽器上下載最新的頁。通道為用戶提供了一條瀏覽一組相關的 Web 頁的快速而直接的通路,并且這些 Web 頁是自動更新的。
使用 ASP,可以編寫腳本來收集用戶的首選項,然后動態地創建通道。通道定義文件 (.cdf) 建立了通道內容的組織和順序。在 .cdf 文件中的命令使用與 HTML 標記相同的語法,以便于掌握和從腳本中生成。在編寫 ASP 腳本來創建通道定義文件時,腳本用 .cdx 擴展名。當 ASP 讀取一個以 .cdx 為擴展名的文件時,將自動發送 application/x-cdf 內容類型,它告訴瀏覽器用通道定義來解釋字節。如果不使用 .cdx 作擴展名,則腳本必須用 Response.ContentType 手工將內容類型設置為 application/x-cdf。
下面是一個有關如何使用通道的示例。下面的 HTML 表格要求用戶選擇通道。提交時,該表格調用 .cdx 文件的腳本去創建通道的定義。
<P> Choose the channels you want. </P> <FORM METHOD="POST" ACTION="chan.cdx"> <P><INPUT TYPE=CHECKBOX NAME=Movies> Movies <P><INPUT TYPE=CHECKBOX NAME=Sports> Sports <P><INPUT TYPE="SUBMIT" VALUE="SUBMIT"> </FORM> Chan.cdx 中的腳本根據與請求一起提交的表格的值創建通道定義。
<% If Request.Form("Movies") <> "" Then %> <CHANNEL> channel definition statements for the movie pages </CHANNEL> <% End If %>
<% If Request.Form("Sports") <> "" Then %> <CHANNEL> channel definition statements for the sports pages </CHANNEL> <% End If %> 向服務器發送文件 瀏覽器可以使用 Posting Acceptor 應用程序將文件發送給 Web 服務器。當 Posting Acceptor 上載文件時,將發送列出每一個收到的文件名稱和位置的 URL-encoded 表格字段。可以將郵遞處理的 URL 添加到腳本中,此腳本上載文件去調用 ASP 腳本來處理這些字段名。例如,可以編寫一個腳本,自動地通過文件的名稱和位置發送 e-mail 給系統管理員。