grails - 在 View 中自动重定向

标签 grails grails-2.3

我正在使用Grails 2.3.3。如果存在特定条件,是否有更好的方法自动从 View 重定向到另一个 Controller /操作,否则将继续显示 View -而不是在操作本身中执行此操作?

我想做的是在显示 View 之前,我要检查是否已登录,如果没有用户干预,是否自动重定向到登录页面。

如果我可以在 View 中执行此操作,则很容易将此登录检查代码添加到_header.gsp中以影响所有页面。这比必须为每个感兴趣的 View 编写每个 Action 中的每个 Action 要快得多。

最佳答案

是的,您可以通过吐出一个javascript代码来实现Grails自定义taglib的功能,该代码将在您未登录的情况下将页面重定向到其他URL。但是,这将减少那些因为您是第一次使用产品的用户的体验。渲染到此页面,然后使用Javascript,您会将其重定向回登录屏幕(如果未登录)。

我将向您推荐另外三种解决方案:

  • 使用Grails的filters为经过身份验证的用户
  • 保护您的操作
  • 您可以使用自定义Java注释通过编写一些代码
  • 来自动保护操作
  • 要跳过以上两个解决方案,您可以使用广泛使用的Grails插件进行认证,即spring security core插件,该插件提供最佳和便捷的认证机制,并使用后台的核心Spring Java库,这反过来又庞大又很棒的东西。
  • 关于grails - 在 View 中自动重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29825691/

    相关文章:

    spring - Grails spring security defaultTargetUrl 路径错误

    grails - 我还如何获取Grails中2个日期之间的记录计数

    grails - Grails找到域,然后将其保存

    grails - Grails列表被索引替换,那么默认值是什么?

    ajax - 用于动态添加多个值的UI,例如Grails中的LinkedIn技能部分

    grails - Spring UI RegisterController-没有这样的属性

    grails - 更改表时Grails产生错误

    grails - Gsp 页面在替换为字符串时保留 html 标签

    grails - 我应该把客户代码放在哪里?

    authentication - Grails代理身份验证错误