2012-07-06 57 views
1

我想为我的ASP.net MVC应用程序创建自己的浏览器文件。但我不清楚浏览器文件的网关或浏览器元素中的“捕获”和“识别”元素的区别。两者都可以具有的userAgent元素定义正则表达式:浏览器文件中的捕获和识别差异

<identification> 
    <userAgent match="iPad" /> 
</identification> 
<capture> 
    <userAgent match="iPad" /> 
</capture> 

由于

回答

1

捕获

定义关于什么附加报头,的userAgent或能力元素以使用捕捉到关于浏览器的信息的信息。当尝试检测.NET Framework 2.0发布时不可用的新浏览器时,这非常有用。为了捕获值,浏览器定义可以在任何标识元素的匹配属性中包含正则表达式捕获。例如,IE.browser文件中定义的以下userAgent元素从用户代理请求标头捕获屏幕高度(以像素为单位)。

浏览器定义可能还需要通过扫描不用于区分浏览器类的请求头来捕获附加信息。例如,以下捕获元素捕获OpenWave蜂窝电话的软键数量。

<capture> 
    <header name="HTTP_X_UP_DEVCAP_NUMSOFTKEYS" 
      match="(?'softkeys'\d+)" /> 
</capture> 

捕获元素不包含属性:当您按下在基于Windows Mobile的Smartphone相应的硬件按钮软键显示菜单和命令。

捕获元件可以包含以下子元素的零个或多个:

header 

userAgent 

capability 

识别

定义关于如何从传入的请求标识该浏览器的信息。

标识元素不包含属性。

识别元件可以包含以下子元素的一个或多个:

header 

userAgent 

capability