ASP實用大全-ASP服務器組件(3)
發表時間:2024-02-09 來源:明輝站整理相關軟件相關文章人氣:
[摘要]瀏覽器性能組件 對于ASP的擴展組件,有些大家已耳熟能詳,有些則還陌生的很,寫這篇文章的的意圖無非想拋磚引玉,在各位對ASP幾大對象已爛熟于心時,不妨玩玩一些不常用的可擴展組件,相信會對各位的ASP編程有很大的啟發。(這篇文章的內容來自MSDN,對其了若指掌的朋友自不必看。還有,小妹的耐 ...
瀏覽器性能組件
對于ASP的擴展組件,有些大家已耳熟能詳,有些則還陌生的很,寫這篇文章的的意圖無非想拋磚引玉,在各位對ASP幾大對象已爛熟于心時,不妨玩玩一些不常用的可擴展組件,相信會對各位的ASP編程有很大的啟發。(這篇文章的內容來自MSDN,對其了若指掌的朋友自不必看。還有,小妹的耐 心不好,如果寫完了這篇沒有長性就此罷筆,望各位在大罵的時候留點口德,多謝多謝。):b
[center]Browser Capabilities Component——瀏覽器性能組件[/center]
瀏覽器性能組件創建一個瀏覽器類型(BrowserType)對象用以向你的腳本描述客戶端瀏覽器能力。
一旦一個瀏覽器連接到Web服務器,瀏覽器會自動將一串用戶代理HTTP報頭(User Agent HTTP Header)傳送到服務器。該報頭為一ASCII字符串用以識別該瀏覽器及其版本號。瀏覽器類型(BrowserType)對象將該報頭與Browsercap.ini文件中的條目進行比較。
如果找到匹配的條目,瀏覽器類型(BrowserType)對象假設該瀏覽器具備Browsercap.ini文件中所描述的屬性。
如果對象沒有在Browsercap.ini文件中找到與報頭匹配的條目,瀏覽器類型(BrowserType)對象假設該瀏覽器具備默認瀏覽器的屬性。如果沒有匹配條目并且Browsercap.ini文件沒有定義默認瀏覽器的各項設置,則瀏覽器類型(BrowserType)對象將該瀏覽器的各項屬性值賦為“Unkown”。
通過升級Browsercap.ini文件,你可以方便的把瀏覽器屬性或者對新瀏覽器的描述加入到這個組件(稍候介紹如何升級Browsercap.ini文件)。
文件名
Browsercap.dll 瀏覽器性能組件
Browsercap.ini 一個用以描述瀏覽器屬性的文本文件,該文件必須和Brwosercap.dll文件處于同一目錄下
語法
Set BrowserType = Server.CreateObject("MSWC.BrowserType")
參數
BrowserType——用Server.CreateObject語句創建的瀏覽器類型(BrowserType)對象的名字
注冊條目
無需注冊
例子
以下例子給出如何用瀏覽器性能組件取得當前瀏覽器一些屬性。
<% Set bc = Server.CreateObject("MSWC.BrowserType") %> <table border=1> <tr><td>Browser</td><td> <%= bc.browser %> </td></TR> <tr><td>Version</td><td> <%= bc.version %> </td></TR> <tr><td>Frames</td><td> <% if (bc.frames = TRUE) then %> TRUE <% else %> FALSE <% end if %> </td></TR> <tr><td>Tables</td><td> <% if (bc.tables = TRUE) then %> TRUE <% else %> FALSE <% end if %> </td></TR> <tr><td>BackgroundSounds</td><td> <% if (bc.BackgroundSounds = TRUE) then %> TRUE <% else %> FALSE <% end if %> </td></TR> <tr><td>VBScript</td><td> <% if (bc.vbscript = TRUE) then %> TRUE <% else %> FALSE <% end if %> </td></TR> <tr><td>JScript</td><td> <% if (bc.javascript = TRUE) then %> TRUE <% else %> FALSE <% end if %> </td></TR> </table>
|
Browscap.ini文件
你可以在Browscap.ini文件中描述任意多個瀏覽器的屬性。你也可以設置一套默認屬性,當瀏覽器發送的報頭無法和Browscap.ini中的任何條目匹配時,瀏覽器類型(BrowerType)對象會假設該瀏覽器具備默認的屬性。
每個瀏覽器定義由一個HTTP報頭、一些屬性名以及相關屬性值構成。關于各種瀏覽器的HTTP報頭的定義可參考[link]http://www.w3.org/[/link]網站中的內容。
語法
[; comments] [HTTPUserAgentHeader] [parent = browserDefinition] [property1 = value1] ... [propertyN = valueN]
[Default Browser Capability Settings] [defaultProperty1 = defaultValue1] ... [defaultPropertyN = defaultValueN]
|
參數
comments
注釋,以;開頭的任意多行
HTTPUserAgentHeader
HTTP用戶代理報頭,類似于以下格式[Mozilla/2.0 (compatible; MSIE 3.0;* Windows 95)],其中可以使用通配符*。
browserDefinition
用以定義父類的HTTP報頭
propertyN
瀏覽器的屬性名,可從屬性列表中選取所需的屬性(詳細列表見附錄)
valueN
瀏覽器的屬性值
defaultPropertyN
默認瀏覽器的屬性名,可選屬性同propertyN
defaultValueN
默認瀏覽器的屬性值
例子
;;ie 4.0 [IE 4.0] browser=IE Version=4.0 frames=TRUE tables=TRUE cookies=TRUE backgroundsounds=TRUE vbscript=TRUE javascript=TRUE javaapplets=True ActiveXControls=TRUE beta=False
;;ie 4.01 [Mozilla/2.0 (compatible; MSIE 4.01*; Windows 95)] parent=IE 4.0 version=4.01 minorver=01 platform=Win95
; Default Browser [Default Browser Capability Settings] browser=Default frames=FALSE tables=TRUE cookies=FALSE backgroundsounds=FALSE vbscript=FALSE javascript=FALSE
|
附錄——瀏覽器屬性列表
屬性名 | 描述 |
ActiveXControls | 指定瀏覽器是否支持ActiveX控件 |
backgroundsounds | 指定瀏覽器是否支持背景音樂 |
beta | 指定瀏覽器是否是測試版 |
browser | 指定瀏覽器的名字 |
cdf | 指定瀏覽器是否支持Web發布的頻道解釋定義(Channel Definition Format) |
cookies | 指定瀏覽器是否支持cookies |
frames | 指定瀏覽器是否支持幀顯示 |
Javaapplets | 指定瀏覽器是否支持Java applets |
javascript | 指定瀏覽器是否支持Javascript |
platform | 指定瀏覽器運行所需的操作系統 |
tables | 指定瀏覽器是否支持表格 |
vbscript | 指定瀏覽器是否支持vbscript |
version | 指定瀏覽器的版本 |
注:以上解釋內容為“指定瀏覽器是否支持”開頭的屬性,其屬性值應為True/False,其余為字符串