這篇文章主要介紹了ASP內建對象Server的相關資料,需要的朋友可以參考下
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 的高手。