首页 > 使用教程

判断是否为搜狗浏览器而非其它浏览器

发布于:2024-11-01 11:18 作者:admin

判断是否为搜狗浏览器而非其它浏览器 判断360浏览器5.0版特征困难,因其使用IE内核且难留版权信息。JS部分虽有判断代码,但测试发现其不认得自己,且调用有限制。用$_SERVER[“HTTP_USER_AGENT”]读取其信息,结果与IE8相同。此情况令人困扰,而其它如搜狗浏览器的判断方式在文中也有提及,需根据相关特征进行判断。下面是小编精心整理编写的关于“ 判断是否为搜狗浏览器而非其它浏览器 ”的详细教程,请大家仔细阅览学习:

判断是否为搜狗浏览器而非其它浏览器-搜狗输入法

判断是否为搜狗浏览器而非其它浏览器

搜狗浏览器下载网代码或 js代码,在网上搜索了多个都无法满足需求,针对 360 浏览器 5.0 版,通过抓包来查看该浏览器的特征内容并进行判断。不过现在很多浏览器都可以安装插件来模拟其他浏览器。SERVER[“HTTP_USER_AGENT”] Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ,可以使用预定义变量: $_SERVER[‘HTTP_USER_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 ,人家需要的是 360 浏览器 5.0 版的标志。

然而很遗憾,360 浏览器使用的是 IE 的内核,严格来说它使用的是 webbrowse COM 控件,所以不太可能将自己的版权信息掺杂进去。可以查看 http://hao.360.cn/sethomepage.html 的源文件,了解 360 自己是如何进行判断的,或者查看 http://www.162100.com/sethomepage.搜狗浏览器下载网 。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’; } } 似乎有一定的道理,但用 360 安全浏览器进行测试时,它无法识别自己。

360 大约是要去除这些标识了。让人感到痛苦的是,正为这个问题而纠结,用户要求加上 360 的判断。经过测试,发现 8 楼的办法并没有效果,window.external.twGetRunPath 只有 360.cn 这个域名下的网页才能够调用,其他网页都无法调用,这种行为实在是让人难以接受,甚至有种想骂人的冲动,但还是忍住了,其实在心里已经骂了无数次。用 $_SERVER[“HTTP_USER_AGENT”] 读取 360 浏览器的信息,结果和 IE8 的完全相同。让人不禁疑惑,微软竟然没有起诉它?

关于《判断是否为搜狗浏览器而非其它浏览器》这篇文章的具体内容就介绍到这里,希望能对大家有所帮助。更多相关资讯和教程请关注 搜狗输入法!

最新文章