当前位置:  开发笔记 > 编程语言 > 正文

基于http请求检测Web应用程序中的移动浏览器的标准方法

如何解决《基于http请求检测Web应用程序中的移动浏览器的标准方法》经验,为你挑选了5个好方法。

我们开始走上移动浏览器支持企业电子商务webapp(基于Java/Servlet)的道路.当然,有很多决定要做,但在我看来,基石是能够可靠地检测移动浏览器,并相应地返回要返回的内容.是否有一种标准的方法可以(快速)根据http请求进行此确定,并且理想地收集有关给定请求的给定浏览器和设备的更多信息(屏幕大小,html功能等?).

我还要感谢任何从使用现有大型企业Web应用程序并从开发方面构建移动浏览器支持的人那里获得的任何补充信息.

[edit]我当然理解请求标头和标准用户代理数据库的信息是一个很大的帮助.对于那些谈论"其他"请求标题属性的人,如果您可以包含类似的标准化名称/资源值,这将是一个很大的帮助.

[edit]一些用户已经提出了一些解决方案,这些解决方案涉及通过线路调用某些将进行检测的Web服务.虽然我确信这是有效的,但对于企业电子商务网站来说,这不是一个好的解决方案,原因有两个:1)速度.针对第三方的每个页面请求通过电话进行的呼叫将产生巨大的性能影响.2)依赖/合法.我们将我们的网站响应时间和关键功能与他们的服务联系起来,这在法律和风险方面很糟糕.



1> David..:

标准方法不是检查用户代理吗?这是一个可用于检测移动浏览器的用户代理数据库.


我没有意识到有一个积极维护的参考.谢谢.
WURFL for java是一团糟.祝你找到给定的Java绑定下载.

2> jmccartie..:

@ David的答案提到使用WURFL - 这可能是你最好的选择.但是,预先警告,成功率通常在60%左右(来自我和其他人的经验).由于运营商不断更改UA以及存在的设备配置文件数量(60,000+?),因此无法获得所需的所有正确数据.

在严重依赖设备数据库之前,只需要一点警告.我会尝试保持用户的选项打开,允许他们更改会话选项,以防我猜错了.


+1的建议允许用户选择自己的经验

3> Adam..:

您可以使用Modernizer来检测浏览器功能



4> VoxPelli..:

虽然您可以通过它的用户代理检测到移动浏览器,但PC平台上的浏览器战争已经表明,嗅探用户代理并不是一件好事.

理想情况下应该根据媒体类型应用特定样式,或者根据用户代理以外的标题发送不同的答案 - 例如Accept-header,它告诉浏览器喜欢哪种内容.

现在,通过浏览器嗅探可能足以编写一个适用于iPhone和Opera的网站 - 但Googles Android现在即将推出,还有许多其他手机将在不久的将来拥有接近iPhone的浏览器功能开发一个不支持这些设备的移动网站从头开始,这将是一种浪费.



5> 小智..:

经过几天搜索检测移动设备的正确方法后,我决定保持简单[愚蠢],我将在我的索引页面上放置一个"移动设备网站"按钮....它只需点击一下即可!

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有