【问题标题】:how to identify requests which are originating from Mobile App and which are originating from the Mobile Browser by using the user agent and URL?如何使用用户代理和 URL 识别来自移动应用程序和来自移动浏览器的请求?
【发布时间】:2016-03-04 23:40:31
【问题描述】:

如何识别来自移动应用程序(移动应用程序)和来自移动浏览器(任何)的请求???

可以说 facebook 可以通过 facebook-app 访问,也可以通过网络浏览器访问。我们如何识别服务器端的传入请求,这些请求来自 Facebook 应用程序,哪些是从 Web 浏览器访问的。

【问题讨论】:

  • 这个问题没用,stackoverflow 上有很多答案,具体取决于编码语言和其他偏好。检测的概念在任何地方都是相同的。请在提出问题之前使用搜索。
  • 那么,我说的对吗?您想在服务器端区分来自移动浏览器和 APP 的请求吗?也许你可以澄清你的问题......

标签: mobile browser user-agent


【解决方案1】:

可以识别来自普通浏览器中的 Facebook 的请求,例如,如果在域 facebook.com 中设置了相应的引荐来源网址。 Facebook-APP 的内部浏览器可以通过包含(一些)方括号中的字符串的用户代理令牌来识别:

[FBAN FBIOS FBAV FBMD FBSN FBSV FBSS FBCR FBID FBLC FBOP FB_IAB FB4A]

这将是一个示例用户代理:

Mozilla/5.0(iPhone;CPU iPhone OS 8_1_2 像 Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12B440 [FBAN/FBIOS;FBAV/44.0.0.54.111;FBBV/17684769;FBDV/iPhone7,2;FBMD/iPhone;FBSN/iPhone 操作系统;FBSV/8.1.2;FBSS/2; FBCR/T-MobileA;FBID/电话;FBLC/de_DE;FBOP/5]

您可以在这个user agent search engine...中找到数千个真实的示例...

【讨论】:

  • 非常感谢您回复 theafh。这很有帮助。根据您提供的输入分析数据。在这里,我以 facebook 为例,只是为了说明问题。我一般需要的是,识别使用情况的拇指规则是来自应用程序(任何应用程序,如推特、谷歌+......等)或浏览器......因为“TwitterAndroid/5.97.0(5110035- r-848) Nexus 6/6.0.1 (motorola;Nexus 6;google;shamu;0;;0)”这是 twitter 的用户代理。它不包含您提供的任何字符串。
  • 好的,对不起,我误解了你的问题。是的,您可以通过用户代理中的一些令牌根据请求检测一些应用程序。不幸的是,这是特定于应用程序的,就像我在 Facebook 示例中的回答一样。
猜你喜欢
  • 2013-06-14
  • 1970-01-01
  • 2015-10-07
  • 1970-01-01
  • 2016-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多