我们的NodeJS + Express网络应用程序有很多使用Opera mini的用户,因为代理浏览器可以帮助他们保存数据,而且很多人都使用功能手机。
我的疑问是:
当我们尝试拦截Opera Mini的请求时,user-agent-string
为Mozilla/5.0 (Linux; U; Android 5.1.1; en-US; ONE A2003 Build/LMY47V) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 OPR/15.0.2125.101257 Mobile Safari/537.36
Opera的文档说here
Opera Mini继续在服务器上使用Presto,其UA字符串不变;它包含字符串“Opera Mini”。
标题中也有x-requested-with: "com.opera.mini.native"
。
我的问题是,为什么Mozilla
user-agent
字符串会显示而不是opera-mini
?我尝试了Extreme
以及High
储蓄模式。 user-agent
是完全相同的。
我错过了什么?
答案 0 :(得分:1)
Opera Mini UA仅在压缩模式下包含Opera Mini。
答案 1 :(得分:1)
如果我使用Opera Mini的极端数据保存模式访问我们的网站,我会在正常模式下访问时得到一个不同的UA字符串。
普通模式:
Mozilla / 5.0(Linux; U; Android 4.1.1; Galaxy Nexus Build / JRO03C)AppleWebKit / 534.30(KHTML,类似Gecko)版本/ 4.0 Mobile Safari / 534.30 OPR / 22.0.2254.113472
极端模式:
Opera / 9.80(Android; Opera Mini / 22.0.2254 / 60.271; U; en)Presto / 2.12.423 Version / 12.16
第一个UA字符串中唯一的标识符是“OPR”。