区分iPhone Web浏览器和iPhone app用户代理

时间:2010-07-22 04:56:15

标签: iphone http user-agent

在服务器上通过网络浏览器区分来自iPhone的请求与使用目标c编写的应用程序的iphone之间区分的最佳方法是什么?我在用户代理字符串中寻找什么差异?

3 个答案:

答案 0 :(得分:32)

似乎使用UIWebKit HTTP请求组件的iPhone应用程序具有如下所示的用户代理字符串

Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0_1 like Mac OS X; fr-fr) AppleWebKit/532.9 (KHTML, like Gecko) Mobile/8A306
Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_2 like Mac OS X; fr-fr) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7D11
Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_3 like Mac OS X; fr-fr) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7E18

虽然iPhone上的Safari主要是same string,但以“Safari / XXX”结尾

然而,也可以change the user agent of UIWebKit,然后无法保证您将通过这种方式获取每个iPhone应用程序。

答案 1 :(得分:0)

我相信Safari应用中的用户代理以“Mozilla”开头,而应用中的用户代理则以应用名称开头。

答案 2 :(得分:-4)

确实,用户代理会有所不同。

在PHP中,您可以找到:$ _SERVER ['HTTP_USER_AGENT']