有类似的网站whatsmybrowser.org和whatismybrowser.com检测有关客户端技术规格的信息。据我所知,这是使用user-agent
浏览器在 HTTP 请求中发送的信息完成的。
令我感到困惑的是,当我明确将user-agent
字符串设置为随机值时,在某些情况下它仍然可以检测到我的浏览器和操作系统。
例如, whatbrowser.org知道我正在使用 Firefox 31;并且 www.whatsmyua.com显示以下字符串:
Mozilla/5.0(X11;Ubuntu;Linux x86_64;rv:31.0)Gecko/20100101 Firefox/31.0
它看起来非常像一个用户代理。
但是它是从哪里检测到的?Firebug 显示刚刚fake-user-agent
发送的 HTTP 请求标头。
如果这很重要,我会使用 Firefox 的 UAControl 伪造我的用户代理(pt-br 版本,en-US 版本)。
答案1
我不确定这些网站具体在做什么,但可以使用 JavaScript 探测浏览器以检测其功能和身份。这就是渐进增强已经完成了。