程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP基礎入門第十篇(ASP內建對象Server)

ASP基礎入門第十篇(ASP內建對象Server)

日期:2017/4/17 15:53:44      編輯:關於ASP編程

Server 對象提供對服務器上的方法和屬性的訪問 , 其中大多數方法和屬性是作為實用程序的功能服務的。有了 Server 對象,你就可以在服務器上啟動 ActiveX 對象例程,並使用 Active Server 服務提供象 HTML 和 URL 編碼這樣的函數。

一、語法

   Server.property|method

二、屬性

   ScriptTimeout 超時值,在腳本運行超過這一時間之後即作超時處理。如下代碼指定服務器處理腳本在 100 秒後超時。

   < % Server.ScriptTimeout=100 %>

   這裡需要注意的是,通過使用元數據庫中的 AspScriptTimeout 屬性可以為 Web 服務或 Web 服務器設置缺省的 ScriptTimeout 值。ScriptTimeout 屬性不能設置為小於在元數據庫中指定的值。例如,如果 NumSeconds 設置為 60,而元數據庫設置包含了默認值 90 秒,則腳本在 90 秒後超時。

三、方法

1、HTMLEncode 方法

   HTMLEncode 方法允許你對特定的字符串進行 HTML 編碼,雖然 HTML 可以顯示大部分你寫入 ASP 文件中的文本,但是當你需要實際包含 HTML 標記中所使用的字符,就會遇到問題。這是因為,當浏覽器讀到這樣的字符串時,會試圖進行解釋。例如下面的這段文本 :
   這是對 HTMLEncode 方法的測試。< br> 這裡應該不會另起一行。

   會被浏覽器顯示為 :

   這是對 HTMLEncode 方法的測試。
   這裡應該不會另起一行。

   為了避免此類問題,我們就需要使用 Server 對象的 HTMLEncode 方法,采用對應的不由浏覽器解釋的 HTML Character Code 替代 HTML 標記字符。所以,用下面的代碼才能顯示正確的 HTMLEncode 字符串,從而在浏覽器中按你的需要輸出文本。
  < %
  Response.write Server.HTMLEncode(" 這是對 HTMLEncode 方法的測試。< br> 這裡應該不會另起一行。")%>

2、URLEncode 方法

   就象 HTMLEncode 方法使客戶可以將字符串翻譯成可接受的 HTML 格式一樣,Server 對象的 URLEncode 方法可以根據 URL 規則對字符串進行正確編碼,當字符串數據以 URL 的形式傳遞到服務器時,在字符串中不允許出現空格,也不允許出現特殊字符。為此,如果你希望在發送字符串之前進行 URL 編碼,可以使用 Server.URLEncode 方法。
3、MapPath 方法

   MapPath 方法將指定的相對或虛擬路徑映射到服務器上相應的物理目錄上。

   語法如下:Server.MapPath(Path)

   Path 指定要映射物理目錄的相對或虛擬路徑。若 Path 以一個正斜槓 (/) 或反斜槓 (\) 開始,則 MapPath 方法返回路徑時將 Path 視為完整的虛擬路徑。若 Path 不是以斜槓開始,則 MapPath 方法返回同 .asp 文件中已有的路徑相對的路徑。這裡需要注意的是 MapPath 方法不檢查返回的路徑是否正確或在服務器上是否存在。

   對於下列示例,文件 data.txt 和包含下列腳本的 test.asp 文件都位於目錄 C:\Inetpub\Wwwroot\asp 下。C:\Inetpub\Wwwroot 目錄被設置為服務器的宿主目錄。下列示例使用服務器變量 PATH_INFO 映射當前文件的物理路徑。以下腳本
   < %= server.mappath(Request.ServerVariables("PATH_INFO"))%>

   輸出

   c:\inetpub\wwwroot\asp\test.asp

   由於下列示例中的路徑參數不是以斜槓字符開始的,所以它們被相對映射到當前目錄,此處是目錄 C:\Inetpub\Wwwroot\asp。以下腳本
  < %= server.mappath("data.txt")%>
    < %= server.mappath("asp/data.txt")%>

輸出
c:\inetpub\wwwroot\asp\data.txt
c:\inetpub\wwwroot\asp\asp\data.txt

4、CreateObject 方法

   Server.CreateObject 恐怕是 ASP 中最為實用,也是最強勁的功能了。它用於創建已經注冊到服務器上的 ActiveX 組件實例。這是一個非常重要的特性,因為通過使用 ActiveX 組件能夠使你輕松地擴展 ActiveX 的能力,正是使用了 ActiveX 組件,你可以實現至關重要的功能,譬如數據庫連接、文件訪問、廣告顯示和其他 VBScript 不能提供或不能簡單地依靠單獨使用 ActiveX 所能完成的功能。正是因為這些組件才使得 ASP 具有了強大的生命力。
   其語法如下:

   Server.CreateObject("Component Name")

   默認情況下,由 Server.CreateObject 方法創建的對象具有頁作用域。這就是說,再當前 ASP 頁處理完成之後,服務器將自動破壞這些對象。如果要創建有會話或應用程序作用域的對象,可以使用 < OBJECT> 標記並設置 SESSION 或 APPLICATION 的 SCOPE 屬性,也可以在對話及應用程序變量中存儲該對象。如下例程 :
   < % Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%>

   這裡需要注意的是,不能創建與內建對象同名的對象實例,否則,如下列腳本將返回錯誤。

   < % Set Response = Server.CreateObject("Response") %>

至今為止,我們已經學習完了 ASP 所有的內建對象,不知大家是不是很興奮?

其實 ASP 是很簡單的,只要大家不斷的實踐,相信一段時間後都不難成為ASP 的高手。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved