将不同的 GWT 实现返回到 GAE 上的移动和桌面客户端
我在 GWT 应用程序(从 GAE 运行)中对桌面和移动客户端使用不同的实现。一种解决方案是 GWT 中的用户代理检测。该解决方案将桌面和移动实施加载到客户端中。
更简洁的解决方案是在服务器 servlet 上进行用户代理检测。该解决方案仅返回客户端的正确实现。
如何从 GAE 返回这些不同的实现?
I'm using different implementations for Desktop and Mobile clients in my GWT application (which runs from GAE). One solution is the user-agent detection in GWT. This solutions loads both the Desktop and Mobile implementation into the client.
A cleaner solution would be an user-agent detection on the server servlet. This solution only returns the correct implementation for the client.
How do I return this different implementations from GAE?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我实际上已经这样做了。您将欢迎页面声明为映射为 servlet 的 url
在此 servlet 中,您将获得 userAgent 值:
然后,根据该值,您可以转发或重定向到桌面页面或移动页面:
或者
转发让浏览器认为他仍然处于初始请求,并且仍然会显示欢迎页面 url,而进行重定向实际上会告诉浏览器他正在被重定向到另一个资源,以便该资源的 url 将显示在导航栏中。
I've actually done that. You declare your welcome page as an url that is mapped to as servlet
In this servlet you get the userAgent value:
And then, depending on that value, you can either forward or redirect to your desktop page or to your mobile page:
or
Forward will make the browser think that he's still at the initial request and it will still display the welcome page url, while doing a redirect will actually tell the browser that he's being redirected to another resource, so that resource's url will be displayed in the navigation bar.
您是否查看过 MobileWebApp来自 GWT 的样本?
Have you looked at the MobileWebApp sample from GWT?
这里还有一个很好的例子 GWT 2.1 Seminar 2010。这使用服务器端用户代理检查回退到查询参数(m=1)。它在应用程序 gwt.xml 文件中执行此操作。
There's also a good example here GWT 2.1 Seminar 2010. This uses server side user-agent checking dropping back to query parameters (m=1). It does this in the applications gwt.xml file.