【问题标题】:Servier side and client side device detection服务端和客户端设备检测
【发布时间】:2013-04-29 08:26:35
【问题描述】:

我们在 Servlet/jsp 中有两个相同的 Web 应用程序模块。一种用于移动设备,一种用于台式机。每当手持设备访问桌面版本时,我都想重定向到移动版本。由于我有相同应用程序的两个不同上下文,这将是最好的方法。服务器端设备检测或客户端检测和重定向。

提前致谢。

【问题讨论】:

    标签: javascript jsp servlets device-detection


    【解决方案1】:

    这与在两个不同的应用程序(甚至两个不同的服务器)之间进行重定向没有什么不同。您可能有充分的理由像这样将其分开,但我会考虑只有一个应用程序,并使用响应式设计(媒体查询)来提供适应设备的内容。但是如果你真的想按照你描述的那样做,我会在服务器端进行检测,因为这样做客户端将依赖于能够在客户端上执行 javascript,这可能会或可能不会被启用或阻止。

    但无论您选择什么方法,拜托,拜托,拜托让用户按照自己的意愿覆盖它。在进行重定向时,请,请,请不要丢失用户一开始尝试访问的上下文。我所知道的最糟糕的事情是网站在尝试访问网站的特定部分(通常是一篇文章)后重定向到移动网站,然后只是被重定向到网站的根目录,然后不得不尝试找到我正在寻找的网站(文章)的部分......

    【讨论】:

    • 桌面版本已经存在了一段时间,因此在如此短的时间内调整响应式网页设计是不可能的。但我绝对会记住所有其他建议。