©
This document uses PHP Chinese website manual Release
ASP Browser Capabilities 组件会创建一个 BrowserType 对象,这个对象可测定访客浏览器的类型、性能和版本号。
当浏览器连接到服务器时,就会向服务器发送一个 HTTP User Agent 报头。这个报头包含关于浏览器的信息。
BrowserType 对象会把报头中的信息与服务器上名为 "Browscap.ini" 的文件中的信息作比较。
如果报头中的浏览器类型和版本号与 "Browsercap.ini" 文件中信息匹配,那么我们就可以使用 BrowserType 对象列出这个匹配的浏览器的相关属性。如果上述情况不匹配,这个对象会把每个属性设置为 "UNKNOWN"。
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>
下面的实例会在 ASP 文件中创建一个 BrowserType 对象,并显示当前浏览器性能的一些信息:
<!DOCTYPE html>
<html>
<body>
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>
<table border="0" 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" 文件用于声明属性,并设置各浏览器的默认值。
这部分内容不是关于如何维护 Browscap.ini 文件的教程,我们只提供一些关于 "Browsercap.ini" 的基础知识和概念,让您对该文件有个大概的了解。
"Browscap.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 | 可选项。规定浏览器的属性。下面的表格列出了某些可能的属性:
|
valueN | 可选项。规定 propertyN 的值。可为字符串、整数(前缀带 #)或者布尔值。 |
defaultPropertyN | 可选项。规定浏览器属性的名称,假如已定义的 HTTPUserAgentHeader 值中没有值能与浏览器发送的 HTTP User Agent 报头相匹配,则为这个属性分配一个默认的值。 |
defaultValueN | 可选项。规定 defaultPropertyN 的值。可为字符串、整数(前缀带 #)或者布尔值。 |
"Browscap.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