1

在 Grails 中为用户获取上次访问信息的最佳实践或方法是什么?对于用户登录,我使用的是 spring security,我想根据 lastvisited 日期显示一些垃圾信息。到目前为止,我在用户域中没有任何属性。请让我知道我可以在 Grails 应用程序中轻松收集上述信息的不同和可能的方法。另一个相关查询是,当用户在浏览器中关闭窗口或选项卡而不按注销链接/按钮时,我该如何解决上述问题?

4

1 回答 1

0

我们最终变得非常混乱 - 很高兴知道更好的方法。我们正在保存以下访问信息:

  • login - 在一个spring-security-redirect指向的动作中;
  • 通过“记住我”登录 - 在ApplicationListener.onApplicationEvent(appEvent)(我们做了一个服务ApplicationListener):

    if (appEvent instanceof AuthenticationSuccessEvent) {
        if (appEvent.source instanceof RememberMeAuthenticationToken) {
        }
    }
    

    也许这是收集所有登录事件的地方。

  • 注销 - 在我们自己的logout操作中重定向到j_spring_security_logout.
  • 我们不记录会话超时。
于 2011-07-01T09:31:01.180 回答