用户代理

这里引用http://www.useragentstring.com/ 的用户代理报告来解释一下用户代理中的字段都是表示什么意思:
chrome:

Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36

firefox:

Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0

IE:

Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Geck

移动端的代理检测:
safari

userAgent:Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B440 Safari/600.1.4

android浏览器

android系统中几乎全部杂牌国产浏览器都是使用的webkit的内核,opera在新版本上也从pesto转向webkit,截取一二示意:
1、chrome(android版)
Mozilla/5.0 (Linux; Android 4.1.1; MI 2 Build/JRO03L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.114 Mobile Safari/537.36

小米内置

Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2S Build/JRO03L) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 XiaoMi/MiuiBrowser/2.1.1

3、mercury浏览器:
Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2S Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

4、opera浏览器
旧版:
Opera/9.80 (Android; Opera Mini/7.8.35885/35.5464; U; zh) Presto/2.8.119 Version/11.10

新版:
Mozilla/5.0 (Linux; U; Android 4.1.1; zh-CN; MI 2S Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 OPR/10.2.5.89953 Mobile Safari/534.30

windows phone:
自带IE11:

Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Nokia 520) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537

UC:

Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Nokia 520) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537 UCBrowser/4.2.1.541 Mobile

summary:

关于用户代理更多的信息,可以查看http://useragentstring.com/pages/useragentstring.php

代理检测(参考zmobile.js):
 
 
  1. var ua = function ( ua, appVersion, platform ) {
  2. return {
  3. // win系列
  4. win32 : platform === "Win32",
  5. ie : /MSIE ([^;]+)/.test( ua ),
  6. ieMobile : window.navigator.msPointerEnabled,
  7. ieVersion : Math.floor( (/MSIE ([^;]+)/.exec( ua ) || [0, "0"])[1] ),
  8. // ios系列
  9. ios : (/iphone|ipad/gi).test( appVersion ),
  10. iphone : (/iphone/gi).test( appVersion ),
  11. ipad : (/ipad/gi).test( appVersion ),
  12. iosVersion : parseFloat( ('' + (/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec( ua ) || [0, ''])[1])
  13. .replace( 'undefined', '3_2' ).replace( '_', '.' ).replace( '_', '' ) ) || false,
  14. safari : /Version\//gi.test( appVersion ) && /Safari/gi.test( appVersion ),
  15. uiWebView : /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test( ua ),
  16. // 安卓系列
  17. android : (/android/gi).test( appVersion ),
  18. androidVersion : parseFloat( "" + (/android ([0-9\.]*)/i.exec( ua ) || [0, ''])[1] ),
  19. // chrome
  20. chrome : /Chrome/gi.test( ua ),
  21. chromeVersion : parseInt( ( /Chrome\/([0-9]*)/gi.exec( ua ) || [0, 0] )[1], 10 ),
  22. // 内核
  23. webkit : /AppleWebKit/.test( appVersion ),
  24. // 其他浏览器
  25. uc : appVersion.indexOf( "UCBrowser" ) !== -1,
  26. Browser : / Browser/gi.test( appVersion ),
  27. MiuiBrowser : /MiuiBrowser/gi.test( appVersion ),
  28. // 微信
  29. MicroMessenger : ua.toLowerCase().match( /MicroMessenger/i ) == "micromessenger",
  30. // 其他
  31. canTouch : "ontouchstart" in document
  32. };
  33. }( navigator.userAgent, navigator.appVersion, navigator.platform );




转载于:https://www.cnblogs.com/rubyisaPM/p/4380065.html

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值