【问题标题】:Browser Detection on iOSiOS 上的浏览​​器检测
【发布时间】:2019-10-14 07:03:13
【问题描述】:

我目前在移动苹果设备上的浏览器检测方面遇到了困难。我在同一台设备上测试了 safari、chrome 和 firefox,结果让我很难检测到确切的浏览器。看看:

Safari

Mozilla/5.0(iPhone;CPU iPhone OS 12_2,如 Mac OS X)Apple WebKit/605.1.15(KHTML,如 Gecko)版本/12.1 Mobile/15E148 Safari 604/1

操作系统=mac;浏览器=野生动物园;设备=iphone; os_version=未知; browser_version=12.1

Chrome(桌面视图)

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) Apple WebKit/605.1.15 (KHTML, like Gecko) 版本/11.1.1 Safari/605.1.15

操作系统=mac;浏览器=野生动物园;设备=未知; os_version="mac-os-x-13"; browser_version=11.1.1

Chrome(移动端视图)

Mozilla/5.0(iPhone;CPU iPhone OS 12_2,如 Mac OS X)Apple WebKit/605.1.15(KHTML,如 Gecko)CriOs/77.0.3865.103 Mobile/15E148 Safari 605/1

操作系统=mac;浏览器=铬;设备=iphone; os_version=未知; browser_version=77.0.3865.103

Firefox(桌面视图)

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) Apple WebKit/605.1.15 (KHTML, like Gecko) 版本/12.0 Safari/605.1.15

操作系统=mac;浏览器=野生动物园;设备=未知; os_version="mac-os-x-13"; browser_version=12.0

Firefox(移动端视图)

Mozilla/5.0(iPhone;CPU iPhone OS 12_2,如 Mac OS X)Apple WebKit/605.1.15(KHTML,如 Gecko)FxiOS/19.1b16203 Mobile/15E148 Safari/605.1.15

操作系统=mac;浏览器=野生动物园;设备=iphone; os_version=未知; browser_version=0

第一行是用户代理字符串,其他细节来自我正在使用的库。如您所见,很难从这些细节中检测到正确的设备。因此,我只想在移动 iOS 设备上允许 safari,但大多数其他版本也将自己伪装成 safari。

是否有浏览器检测的最佳实践?请帮忙。

【问题讨论】:

    标签: angular typescript browser safari user-agent


    【解决方案1】:

    我刚决定使用这个正则表达式: https://coderwall.com/p/ktrbhq/detect-mobile-safari

    无论如何,我不喜欢这种解决方案。非常感谢更好的方法。

    【讨论】:

      猜你喜欢
      • 2012-02-02
      • 2011-01-14
      • 2011-04-19
      • 2011-09-24
      • 2011-07-25
      • 2012-12-30
      • 2013-03-03
      • 2011-12-18
      相关资源
      最近更新 更多