ASP Browser Capabilities 组件
实例
Browser Capabilities 组件
本例演示如何测定每一个访问网站的浏览器的类型、性能以及版本号。
<html>
<body>
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>
<table border="1" width="65%">
<tr>
<td width="52%">客户机操作系统</td>
<td width="48%"><%=MyBrow.platform%></td>
</tr>
<tr>
<td >Web 浏览器</td>
<td ><%=MyBrow.browser%></td>
</tr>
<tr>
<td>浏览器版本</td>
<td><%=MyBrow.version%></td>
</tr>
<tr>
<td>框架支持</td>
<td><%=MyBrow.frames%></td>
</tr>
<tr>
<td>表格支持</td>
<td><%=MyBrow.tables%></td>
</tr>
<tr>
<td>音频支持</td>
<td><%=MyBrow.backgroundsounds%></td>
</tr>
<tr>
<td>Cookies 支持</td>
<td><%=MyBrow.cookies%></td>
</tr>
<tr>
<td>VBScript 支持</td>
<td><%=MyBrow.vbscript%></td>
</tr>
<tr>
<td>JavaScript 支持</td>
<td><%=MyBrow.javascript%></td>
</tr>
</table>
</body>
</html>
ASP Browser Capabilities 组件
ASP Browser Capabilities 组件会创建一个 BrowserType 对象,这个对象可测定访问者浏览器的类型、性能以及版本号。
当浏览器连接到服务器时,就会向服务器发送一个 HTTP User Agent 报头。这个报头包含着有关浏览器的信息(比如浏览器类型和版本号)。BrowserType 对象会把报头中的信息与服务器上名为 "Browscap.ini" 的文件中的信息作比较。
如果标题中被发送的浏览器类型和版本号和 "Browsercap.ini" 文件中信息可以匹配,那么我们就可以使用 BrowserType 对象列出这个匹配的浏览器的相关属性。如果上述情况不匹配,这个对象会把每个属性设置为 "UNKNOWN"。
语法
- <%
- Set MyBrow=Server.CreateObject("MSWC.BrowserType")
- %>
下面的例子对在 ASP 文件中创建一个 BrowserType 对象,并显示一个展示当前浏览器性能的表格:
- <html>
- <body>
- <%
- Set MyBrow=Server.CreateObject("MSWC.BrowserType")
- %>
- <table border="1" width="100%">
- <tr>
- <th>Client OS</th>
- <th><%=MyBrow.platform%></th>
- </tr><tr>
- <td >Web Browser</td>
- <td ><%=MyBrow.browser%></td>
- </tr><tr>
- <td>Browser version</td>
- <td><%=MyBrow.version%></td>
- </tr><tr>
- <td>Frame support?</td>
- <td><%=MyBrow.frames%></td>
- </tr><tr>
- <td>Table support?</td>
- <td><%=MyBrow.tables%></td>
- </tr><tr>
- <td>Sound support?</td>
- <td><%=MyBrow.backgroundsounds%></td>
- </tr><tr>
- <td>Cookies support?</td>
- <td><%=MyBrow.cookies%></td>
- </tr><tr>
- <td>VBScript support?</td>
- <td><%=MyBrow.vbscript%></td>
- </tr><tr>
- <td>JavaScript support?</td>
- <td><%=MyBrow.javascript%></td>
- </tr>
- </table>
- </body>
- </html>
输出:
Client OS | WinNT |
---|---|
Web Browser | IE |
Browser version | 5.0 |
Frame support? | True |
Table support? | True |
Sound support? | True |
Cookies support? | True |
VBScript support? | True |
JavaScript support? | True |
Browscap.ini文件
"Browsercap.ini" 文件用于声明属性,并设置各浏览器的默认值。
本节内容不是关于如何 Browscap.ini 文件的教程,我们只提供一些关于 "Browsercap.ini" 的基础知识和概念。
"Browsercap.ini" 文件可包含下面的信息:
- [;comments]
- [HTTPUserAgentHeader]
- [parent=browserDefinition]
- [property1=value1]
- [propertyN=valueN]
- [Default Browser Capability Settings]
- [defaultProperty1=defaultValue1]
- [defaultPropertyN=defaultValueN]
参数 | 描述 |
---|---|
comments | 可选项。任何起始于分号的代码行都被 BrowserType 对象忽略 |
HTTPUserAgentHeader | 可选项。规定与在 propertyN 中设定的 browser-property 值声明相关的 HTTP User Agent 报头。允许使用通配符。 |
browserDefinition | 可选项。规定作为父浏览器使用的某个浏览器的 HTTP User Agent header-string。当前浏览器的定义会继承在父浏览器的定义中所有声明过的属性值。 |
propertyN | 可选项。规定浏览器的属性。下面的表格列出了某些可能的属性: - ActiveXControls - 是否支持ActiveX控件? - Backgroundsounds - 是否支持背景声音? - Cdf - 是否支持针对网络广播(Webcasting)的频道定义格式(Channel Definition Format)? - Tables - 是否支持表格? - Cookies - 是否支持cookies? - Frames - 是否支持框架? - Javaapplets - 是否支持Java applets? - Javascript - 是否支持JScript? - Vbscript - 是否支持VBScript? - Browser - 定义浏览器的名称 - Beta - 浏览器是否为beta软件? - Platform - 规定浏览器运行的平台 - Version - 规定浏览器的版本号。 |
valueN | 可选项。规定 propertyN 的值。可为字符串、整数(前缀为#)或者逻辑值。 |
defaultPropertyN | 可选项。规定浏览器属性的名称,假如已定义的 HTTPUserAgentHeader 值中没有值能与浏览器发送的 HTTP 用户代理报头相匹配,则为这个属性分配一个默认的值。 |
defaultValueN | Optional. 规定 defaultPropertyN 的值。可为字符串、整数(前缀为 #)或者逻辑值。 |
"Browsercap.ini"文件会类似这样:
- ;IE 5.0
- [IE 5.0]
- browser=IE
- Version=5.0
- majorver=#5
- minorver=#0
- frames=TRUE
- tables=TRUE
- cookies=TRUE
- backgroundsounds=TRUE
- vbscript=TRUE
- javascript=TRUE
- javaapplets=TRUE
- ActiveXControls=TRUE
- beta=False;DEFAULT BROWSER
- [*]
- browser=Default
- frames=FALSE
- tables=TRUE
- cookies=FALSE
- backgroundsounds=FALSE
- vbscript=FALSE
- javascript=FALSE