我相信如果页面需要身份验证,spring安全性会自动将用户带到登录页面,并在成功登录后重定向到请求的页面。在这种情况下,我有一个页面(例如/ products / productx),公共用户和登录用户都可以访问。但是,如果用户已登录,该页面将显示有关' productx'的更多信息。所以在" productx.gsp'我为用户提供了一个链接,如下所示:
To see more info you must be <g:link controller="login" action="auth">logged in</g:link>
用户通过点击链接登录后如何将用户重定向到&#39; / products / productx&#39;?我不想设置&#39; defaultTargetUrl&#39;在&#39; Config.groovy&#39;,因为我想在几种不同的情况下使用上述功能(登录后重定向到不同的页面)。任何意见都将不胜感激,谢谢!
答案 0 :(得分:1)
无论您是否决定使用登录页面方法,您都很可能需要在Config.groovy中设置defaultTargetUrl;我对此问题的解决方案是在@Secured控制器中使用插页式控制器操作来检查相关的主体数据,并根据业务逻辑将用户重定向到适当的位置。
如果您希望在登录后将它们保留在同一页面上,那么在这种情况下,ajax身份验证方法可能更合适吗?