iOS/MacOS iMessage的用户代理字符串是什么?

问题描述:

我正在解析s3日志以识别iMessage预览制作的请求(在Mac OS SierraiOS 10上)。iOS/MacOS iMessage的用户代理字符串是什么?

很少有常见的UA字符串类型,但我不能告诉哪些来自浏览器与imessage。我希望这是一个独特的UA从Safari浏览器:

  1. `AppleCoreMedia/1.0.0.14B100(iPhone; U; CPU OS 10_1_1喜欢Mac OS X; EN_US)

^得是iOS的Safari浏览器, 对?

2.MobileSMS/1.0 CFNetwork的/ 808.1.4达尔文/ 16.1.0`

^I 认为 MobileSMS意味着即时聊天(希望)

  1. Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.1.32 (KHTML, like Gecko) Mobile/14B100 Twitter for iPhone
  2. ^Twitter通过webkit webview?

    1. Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriOS/54.0.2840.91 Mobile/14B100 Safari/602.1
    2. ^更多的iOS铬(我明白你的CriOS)

      1. Mozilla/5.0 (iPhone; CPU iPhone OS 10_1_1 like Mac OS X) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/10.0 Mobile/14B100 Safari/602.1
      2. ^更多iOS Chrome?

        1. Twitter/5002568 CFNetwork/760.6.3 Darwin/15.6.0 (x86_64)
        2. ^微

        开始=>
      开始=>
    开始=>
开始=>

我刚面对而试图重新路由的iMessage履带的无角的相同的问题页面会为它生成正确的元标记,并在过程中发现此问题。我想我会写一个答案,因为我现在已经找到了答案。苹果公司的文件中只提到...(Applebot/x.x)User-Agent这是不是是正确的。我在互联网上没有找到任何东西,所以我将流量记录到公共服务器上的一个文件,并通过iMessage分享链接。在日志文件中我收到:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/601.2.4 (KHTML, like Gecko) Version/9.0.1 Safari/601.2.4 facebookexternalhit/1.1 Facebot Twitterbot/1.0 

当我修改我的正则表达式来适应这种User-Agent,则的iMessage履带终于被重新路由到正确的位置。

所以它就在那里,它可能受,因为它没有任何官方的苹果文档中存在的,据我可以告诉更改,恕不另行通知,但我希望这仍然可以帮助别人:)

+0

这是正确的。好奇为什么它在UA字符串中“模仿”facebook/twitter。也许他们正在使用一些开源图书馆来解析开放图标签?我希望能够过滤这些请求,但这里没有太多的东西是与webkit结合使用fb/twitter的工件。哦,好的答案。 –

+0

@BenjaminOman的确很好奇。如果我们可以使用'User-Agent'来区分用户代理,那肯定会很有帮助。唉,这不是苹果在这里雇用的逻辑,无论出于什么原因,他们自己保留。 – SimpleAnecdote

使用此正则表达式来来自IMsg检索器的请求。

Twitterbot(.*)facebookexternalhit)|(facebookexternalhit(.*)Twitterbot 

我已经测试过它,它工作完美。