您如何通过旧的EdgeHTML通过userAgent区分新的基于Blink的Edge?

时间:2019-05-20 19:41:58

标签: microsoft-edge user-agent blink

由于2018 Microsoft Edge team announcement Edge正在将浏览器引擎更改为Blink,因此,如何通过查看User-Agent字符串来补偿EdgeHTML特定的错误和怪异并不明显(对于奇怪之处,您无法通过功能进行更好地检测办法)。当出现这种需求时,什么能可靠地将两个浏览器引擎区分开来?

1 个答案:

答案 0 :(得分:0)

如果将您的网站定位为UA string overrides的对象,则不能:根据这些替代内容的说法,用户代理可能会假装为旧的Edge或相应的Chrome浏览器。

否则,诀窍是扫描navigator.userAgent以查找子字符串Edg/(斜杠前没有尾随e),这是它的默认设置。相反,旧的Edge将会有Edge/。代理字符串示例:

  • 新边缘(默认):Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3763.0 Safari/537.36 Edg/75.0.131.0
  • 旧边缘(白色谎言):Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763
  • Chrome浏览器(谎言):Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3763.0 Safari/537.36