我正在使用WURFL来识别用户是否在移动设备上。某些用户代理字符串被错误地识别为移动设备,这反过来导致内容类型设置不正确。
以下是现实生活中用户代理的示例:
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补丁?怎么样?的
(相关红利问题:如何确定用户代理字符串与哪个配置文件匹配?)
上提供的51Degrees Foundation API答案 0 :(得分:0)
如果您使用51Degrees,则可以拆分它返回的一些对象。看看这里:http://51degrees.mobi/Support/Documentation/Foundation/WURFLMappingTable.aspx
这应该会为您提供user_agent和其他一些属性以满足您的需求。