GWT登录:如何实现?

时间:2014-06-26 18:20:09

标签: gwt login

我对登录服务的制作感到有点困惑:我已经看过很多教程,但仍然无法管理如何制作简单的登录服务。

我不知道我需要哪些工具来记住导航以及如何使用它们。 我可以用:

public interface LoginServiceAsync {
    boolean isAuthenticated(AsyncCallback<UserDTO> callback);
    UserDTO authenticate(String email, String password, AsyncCallback<UserDTO> callback);
    void logout(AsyncCallback<UserDTO> callback);
}

但我在哪里管理Cookies

3 个答案:

答案 0 :(得分:1)

专业提示:如果您不完全了解身份验证应如何运作,请不要自行尝试。

IMO,进行身份验证的最佳方式是重定向到登录表单,因此假设在加载应用程序时用户已通过身份验证(然后您可以使用JSP将用户特定值传递给GWT app;有关示例,请参阅the guice-rf-activity archetype。如果您的应用必须可供匿名用户访问,登录仍然只会重定向到登录页面。有关实际案例,请查看Google网上论坛的行为方式。

这样,您可以将身份验证委派给知道如何操作的某个库(例如Spring Security),或者某些工具(例如标准servlet身份验证,AppEngine特定身份验证)

答案 1 :(得分:0)

GWT只是一种将Java代码转换为HTML和JavaScript的工具。在GWT中验证用户没什么特别的。

一种选择是记住用户在会话中进行身份验证,然后在每次客户端进行RPC调用时检查会话。实施取决于您的Web服务器。谷歌你的网络服务器和“会话”,你会发现有关如何做的大量细节。

答案 2 :(得分:0)

我在尝试查找登录服务时遇到同样的问题。最后我们使用CAS Single Sign Out,因为我们正在使用Tomcat。在这种情况下,用户直接登录Tomcat服务器而不是GWT。每个用户都配置为允许打开URL(GWT应用程序)。例如,如果GWT应用程序托管在htpp:// myhost / GWTapp中,则可以配置用户是否可以访问“/ GWTapp”。

对我来说,最好的好处是,不需要通过调用服务器来改变很多GWT应用程序等等。有一个GWT CAS client可以帮助你。