如何确定一个HTTP请求从浏览器或类似的网络服务其他什么东西来的?
我知道,有一个用户代理,但这主要似乎是网络浏览器。 比如我做我知道请求从谷歌地图或YouTube来了。 该请求被脱落系栓的装置。
如果他们有不同的用户代理,我可以得到一个例子。
谢谢。
如何确定一个HTTP请求从浏览器或类似的网络服务其他什么东西来的?
我知道,有一个用户代理,但这主要似乎是网络浏览器。 比如我做我知道请求从谷歌地图或YouTube来了。 该请求被脱落系栓的装置。
如果他们有不同的用户代理,我可以得到一个例子。
谢谢。
是绝对没有办法知道肯定,如果请求从浏览器或其他什么东西做一个HTTP请求来了。
HTTP协议允许客户端任意设定的用户代理。
我们可以尝试以确定是否在另一端的东西是例如,通过执行JavaScript和测量结果的浏览器。 然而,一些机器人可以执行JavaScript,而不是所有的浏览器执行JavaScript,这样类型的测试不可能是完美的。
使用特定于这些用户代理乖巧的“机器人”(如常见的搜索引擎蜘蛛)将自己的身份。 这里有用户代理的一个非常全面的列表:
http://www.user-agents.org/
http://www.botsvsbrowsers.com/
你不能肯定知道,但你可以解析User-Agent头,并得到它可能是一个想法。
下面是其中一些人的名单。 我怀疑它的全面的,但你应该得到的想法: http://www.zytrax.com/tech/web/browser_ids.htm