我注意到,当在Android操作系统的设备的用户访问我的网站,有不断的两个请求发生在每一页上。第一个是普通的浏览器,第二个来自“Dalvik”。例如:我可以安全阻止Dalvik浏览器代理请求吗?
“GET/HTTP/1.1”200 2126“ - ”“Mozilla/5.0(Linux; Android 5.0.2; SAMSUNG SM-G925F/G925FXXU1AOD8 Build/LRX22G)AppleWebKit/537.36(KHTML,如Gecko)SamsungBrowser /3.0 Chrome/38.0.2125.102 Mobile Safari/537.36“1229 2802
”GET/HTTP/1.1“200 2117” - “”Dalvik/2.1.0(Linux; U; Android 5.0.2; SM-G925F Build/LRX22G)” 546 8729
从我的这种理解,所述第一请求是从实际浏览器,而另一个是从运行浏览器的虚拟机(的Dalvik)。问题是Dalvik请求不使用相同的cookie和/或POST数据,并且这触发了服务器端的错误。一个例子就是用户注册一个账户。普通的浏览器通过POST数据发送,但Dalvik请求只是对动作url进行GET操作。同样,如果用户登录,Dalvik将在基于权限的页面上尝试GET,这可能会将其重定向到其他地方,因为它没有会话。
用户不会遇到任何实际问题(从我可以告诉),但是,我们注意到我们的错误记录的尝试。所以我的问题是:我可以肯定地阻止所有访问尝试,如果浏览器代理指示“的Dalvik/ *。”?会不会对用户产生不利影响?考虑到Dalvik相关的请求实际上没有重新发布真实数据或进行会话,似乎不大可能。但随着与Android更多的经验,希望有人能提供一些关于它的反馈,例如,要我发出了一个特定的HTTP标头/状态代码,如“401未授权”或“400错误的请求”?
任何帮助,将不胜感激。
绝对不只是三星手机。我在其他许多设备上看过它。 –