3

我正在使用 WURFL 来识别用户是否在移动设备上。某些 User-Agent 字符串被错误地识别为移动设备,从而导致内容类型设置不正确。

这是一个现实生活中的用户代理的示例,其行为如下:

Mozilla/5.0 (GTmetrix http://gtmetrix.com/; X11; U; Linux i686 (x86_64); en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13

然后将内容类型设置为application/vnd.wap.xhtml+xml而不是text/html.

我想在 web_browsers_patch.xml 文件中添加一个条目,以便将其识别为非移动浏览器。

以下作品:

<device id="mozilla_ver5"
    user_agent="Mozilla/5.0 (GTmetrix http://gtmetrix.com/; X11; U; Linux i686 (x86_64); en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13"
    fall_back="generic_web_browser" />

但是,为了不必添加所有可能的用户代理变体,我想部分匹配它。就像是:

<device id="mozilla_ver5"
    user_agent="Mozilla/5.0 (GTmetrix"
    fall_back="generic_web_browser" />

不幸的是,这不起作用 - 页面的内容类型再次设置不正确。

是否可以添加匹配部分用户代理字符串的 WURFL 补丁?如何?

(相关的额外问题:如何确定用户代理字符串与哪个配置文件匹配?)

我正在使用http://51degrees.codeplex.com/上提供的 51Degrees Foundation API

4

1 回答 1

0

如果你使用 51Degrees,你可以拆开它返回的一些对象。看看这里:http: //51degrees.mobi/Support/Documentation/Foundation/WURFLMappingTable.aspx

这应该会为您提供 user_agent 和一系列其他属性以满足您的需求。

于 2011-04-29T03:29:00.643 回答