浏览器识别-各种浏览器的 User Agent

作者:vkvi 来源:ITPOW(原创) 日期:2010-8-17

浏览器的 User Agent 是浏览器定义的,没有固定的标准。但 User Agent 是供服务器判断浏览器的一个重要指标,服务器才可以根据不同的浏览器显示不同版本的网页,这在应用程序中极其重要。

我专门下载了一些浏览器,并测试了他们的 User Agent,找出了其中的关键部分,可以靠这些关键部分来判断浏览器。

  • IE:MSIE
  • Firefox:Firefox
  • Chrome:Chrome(我的 Chrome 后面还跟了 Safari 字样,看来判断 Safari 还得多一步了)
  • Opera:Opera

其实上面的都好办,难办的是基于 IE 内核的浏览器,尽管这些浏览器基于 IE,但它们并不是完全兼容于 IE,所以有必要对他们也进行判断。苦恼的是:有些竟然没有改变 User Agent 字符串,使用的是 IE 原汁原味的,让人无法区别;有些竟然还可以自定义 User Agent,这不是捣蛋吗!

  • Avant Browser:Avant Browser
  • 腾讯浏览器:TencentTraveler
  • 世界之窗:TheWorld
  • 360 浏览器:360SE
  • 搜狗浏览器:SE

如果同时打开多个基于 IE 内核的浏览器,那么他们的 User Agent 会相互干扰,明明是这个浏览器,却显示那个浏览器的 User Agent。另外,判断方面,要考虑其他浏览器的 User Agent 字符串,比如:我们不能说含有 SE 就是搜狗浏览器,因为 360 浏览器也含有 SE;不能说含有 Safari 就是 Safari 浏览器,因为 Chrome 中也含有。

相关文章