无需登录即可访问

时间:2014-03-18 21:06:04

标签: security google-app-engine gwt gwt-rpc

我使用GWT,GAE制作网络应用程序。 我查看了一些关于实现登录系统的教程,但大多数教程实现了它,因此必须登录才能访问Web应用程序。我如何制作它以便任何人都可以访问该应用程序,但如果他们想要使用特定于帐户的功能,他们可以选择注册帐户。

2 个答案:

答案 0 :(得分:0)

它有两个部分。

首先,在您的客户端代码中检查用户是否已登录。如果是,则允许访问应用程序的“已关闭”部分。如果没有,您将显示一个链接/按钮以登录并隐藏授权用户可以访问的选项卡/视图。

其次,在您的服务器代码中,您可以指定哪些请求不需要身份验证,哪些请求需要身份验证。如果用户以某种方式计算出如何在不使用客户端代码的情况下发送请求,则这是必要的。

例如,在我的代码中,一些请求在一开始就调用checkSession()。如果在会话中未找到此用户的身份验证对象,则此方法会将LoginException抛出到客户端。如果存在身份验证对象,请求将继续正常执行并将请求的数据返回给客户端。

答案 1 :(得分:0)

继Andrei的回答之后,如果您想要一个框架来管理会话,您可以使用GWT-Platforman excellent Gatekeeper feature

我将它用于我的,我有一个LoggedInGatekeeper课程。只需将@UseGatekeeper(LoggedInGatekeeper.class)添加到每个演示者代理的构造函数中,它就会检查用户是否已登录。如果您希望任何人能够访问该页面,只需使用@NoGatekeeper进行批注。简单!

这需要一些设置,但它是一个伟大的MVP框架。有maven原型和样本等。

希望这有帮助。