Heim  >  Artikel  >  Backend-Entwicklung  >  怎么判断浏览器是否是360浏览器

怎么判断浏览器是否是360浏览器

WBOY
WBOYOriginal
2016-06-23 14:27:262215Durchsuche

php代码或者 js代码,百度了好几个都不可以,
针对 360 浏览器5.0版


回复讨论(解决方案)

抓下包看看360的浏览器浏览器特征是什么内容然后判断.
不过现在很多浏览器都可以装插件模拟其他浏览器的.

SERVER["HTTP_USER_AGENT"] Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) 

可以使用预定义变量:
$_SERVER['HTTP_USER_AGENT'] 
以下是代码
$agent = $_SERVER["HTTP_USER_AGENT"];
if(strpos($agent,"MSIE 8.0"))
echo "Internet Explorer 8.0";
else if(strpos($agent,"MSIE 7.0"))
echo "Internet Explorer 7.0";
else if(strpos($agent,"MSIE 6.0"))
echo "Internet Explorer 6.0";
else if(strpos($agent,"Firefox/3"))
echo "Firefox 3";
else if(strpos($agent,"Firefox/2"))
echo "Firefox 2";
else if(strpos($agent,"Chrome"))
echo "Google Chrome";
else if(strpos($agent,"Safari"))
echo "Safari";
else if(strpos($agent,"Opera"))
echo "360";
else echo $agent;
?>

http://www.google.com.hk/#hl=zh-CN&newwindow=1&safe=strict&site=&source=hp&q=js+%E5%88%A4%E6%96%AD360%E6%B5%8F%E8%A7%88%E5%99%A8&oq=js+%E5%88%A4%E6%96%AD360%E6%B5%8F%E8%A7%88%E5%99%A8&gs_l=hp.3...2337.9890.0.10172.8.8.0.0.0.0.0.0..0.0...0.0..0.1c.uam8R2beIKM&bav=on.2,or.r_gc.r_pw.&fp=a16bbb3ab964cbca&biw=1366&bih=664

to #4 人家要的是 360浏览器5.0版 的标志

不过很遗憾,360浏览器使用的是 IE 的内核,严格的说它使用的是 webbrowse COM控件
所以不可能将自己的版权信息搀和进去

请看看 http://hao.360.cn/sethomepage.html 的源文件,看看360自己是怎么判断的......

或者看看 http://www.162100.com/sethomepage.php

JS部分应该是

  var is360=false;
  try{
    if(window.external&&window.external.twGetRunPath){ 
      var r=external.twGetRunPath(); 
      if(r&&r.toLowerCase().indexOf("360")>-1){
        is360=true;
      }
    }
  }catch(e){
    is360=false;
  }
  if(is360){
    browserMark='360';
  }else{
    var nVersion=navigator.appVersion;
    if(/2345Explorer/i.test(nVersion)){
      browserMark='2345';
    }else if(/Maxthon/i.test(nVersion)){
      browserMark='maxthon';
    }else if(/TheWorld/i.test(nVersion)){
      browserMark='theworld';
    }else if(/TencentTraveler/i.test(nVersion)){
      browserMark='tt';
    }else if(/SE.*MetaSr/i.test(nVersion)){
      browserMark='sogou';
    }else if(/QQbrowser/i.test(nVersion)){
      browserMark='qq';
    }else if(/GreenBrowser/i.test(nVersion)){
      browserMark='green';
    }else if(/360EE/i.test(nVersion)){
      browserMark='360ee';
    }else if(/Chrome/i.test(nVersion)){
      browserMark='chrome';
    }else if(/Firefox/i.test(navigator.userAgent)){
      browserMark='firefox';
    }else if(/Opera/i.test(navigator.userAgent)){
      browserMark='opera';
    }else if(/Safari/i.test(navigator.userAgent)){
      browserMark='safari';
    }else{
      browserMark='ie';
    }
  }

#7、#8 似乎有道理
但我用 360安全浏览器 测试时,他并不认得自己

360大约是要自宫掉这些标识了。度娘不会放过他的任何一样东西。

很痛苦,我也正纠结这个问题,360太流氓了~标志什么的都不留下,万恶的360啊,用户还让我加上360的判断呢

我测试过了 8楼的办法没有用 

window.external.twGetRunPath 只有360.cn 这个域名下的网页才能够调用

别的网页都调用不了  强烈鄙视这种流氓行为  有种想骂它们的冲动  还是忍忍吧 其实心里骂了无数次了

用$_SERVER["HTTP_USER_AGENT"]读取360浏览器的信息,结果和IE8的一模一样。

微软竟然没有起诉他?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:求各位大神指点!在线等待!Nächster Artikel:php读取不了cookie