偶尔机会发现:
这样进去百度,刚进去的时候,是手机版
但是页面加载完成之后
我想知道,
它是通过什么依据,判断用户是通过开发者模式模拟的手机浏览
?
通过navigator.userAgent 不能识别谷歌浏览器的伪造
偶尔机会发现:
这样进去百度,刚进去的时候,是手机版
但是页面加载完成之后
我想知道,
?
通过navigator.userAgent 不能识别谷歌浏览器的伪造
User Agent String。
User Agent就是用户代理,也就是访问服务的程序,在这个例子里是浏览器,当然用户代理不光浏览器。
用户代理会给服务器发送一个头信息(你可以切换到浏览器开发工具的网络面板来看每个请求,头信息中的User-Agent就是),来表明自己是什么用户代理。服务器可以根据这个头信息来发送不同的内容。
另一个答案中说的是通过JS来获取User Agent的方法。
navigator.platform(navigator.userAgent会被浏览器伪造)
不管浏览器是否开启开发者模式,这玩意都不会变,电脑打开,他是'win32',安卓手机打开他是"Linux armv8l",iphone打开他是(这个没有测试)。
可以用这个识别浏览器是否开启开发者模式。
(不知道是否正确,但是可行)
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答873 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
navigator.userAgent 对象提供的信息来判断
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"