java - 如果我使用手机,是否可以导航到 Vaadin 中的另一个页面?
问题描述
我想在 vaadin 中制作一个仅供移动使用的特殊页面。
假设我当前的主机页面是
localhost:8080
. 如果我使用我的手机,那么我将首先被导航到
m.localhost:8080
(或者可能localhost:8080/m
)。
那可能吗?
我的移动页面将是我正确页面的简化页面。
解决方案
如果您想为移动版本使用单独的主机名,那么最好在 Vaadin 以任何方式积极参与之前进行重定向。您可以使用例如检查所有请求并选择是否进行重定向或将请求传递给常规处理程序的 servlet 过滤器来执行此操作。为此,您可以查看User-Agent
标题。约定是此标头值将在mobile
某处包含希望被视为移动设备的设备的字符串。
另一种选择是使用相同的主机名并使用相同的 Vaadin 应用程序为这两个变体提供服务,但改为实现它以便例如您的主布局组件选择根据使用的设备进行不同的配置。为此,您还可以查看用户代理标头(使用VaadinRequest.getCurrent()
)。
推荐阅读
- python - 使用 matplotlib 绘制 hist
- java - 移动项目文件夹后应用程序崩溃 android studio
- java - 如何在詹金斯(Ubuntu)中执行构建命令
- powershell - 空的 sharepoint 联机文件夹
- python - 顺时针方向获得正确形状的正确角度是多少
- amazon-web-services - 将 SSH 和 RDP 的协议/端口的 EC2 安全组源 0.0.0.0/0 恢复为 172.16.0.0/16
- mysql - 如果有两个左连接,如何从左表中获取所有行
- c# - 如何在 Windows 运行时类中传递或注入标准 .net 对象
- kubernetes - istio 是否支持将 HTTP 服务作为外部授权服务?
- javascript - 仅对 DIV 内的文本应用样式