在现代浏览器中请求['HTTP_USER_AGENT']结构

时间:2011-12-22 13:50:08

标签: django browser request agent

考虑到iframe中的cookie策略,我遇到了一个safari问题...我也找到了一个有效的解决方案,但为了使其工作,我需要确定用户正在查看的浏览器。

搜索HTTP_USER_AGENT(django)字的原始解决方案 - safari。这里的问题是:

WM用户代理上的Safari Windows XP - Mozilla / 5.0(Windows NT 5.1)AppleWebKit / 534.52.7(KHTML,与Gecko一样)版本/ 5.1.2 Safari /534.52.7

Chrome Linux用户代理 - Mozilla / 5.0(X11; Linux i686)AppleWebKit / 535.7(KHTML,与Gecko一样)Chrome / 16.0.912.63 Safari / 535。

因此,我努力寻找使用户代理的信息,以及如何对其进行分区以获得精确的结果。当然,在这种情况下,如果没有单词' chrome'我可以额外增加,但是铬konqueror和任何其他次要浏览器呢...

2 个答案:

答案 0 :(得分:-1)

所以我发现在用户代理中可以找到你想要的任何信息。

您可以通过某种抽象规则确定浏览器,但这些规则并不适用于所有浏览器。

在浏览器大战期间,许多Web服务器被配置为仅将需要高级功能的网页发送到被识别为某个版本的Mozilla的客户端。 因此,大多数Web浏览器使用User-Agent值,如下所示:Mozilla/[version] ([system and browser information]) [platform] ([platform details]) [extensions]

更多@ http://en.wikipedia.org/wiki/User_agent

在我的情况下,我查看了http://www.user-agents.org/并确定只有Chrome在上一部分中模仿了Safari。

答案 1 :(得分:-2)

http://www.quirksmode.org/js/detect.html

首先搜索Chrome一词,然后搜索Safari。