我们有一些购物车页面适用于访客和用户路径。我们希望允许用户在此过程中随时登录,但实际上并不想创建另一个登录页面。我希望我们可以简单地将用户重定向到现有登录并告诉 Spring Security 返回哪个 URL。
我知道当 session 超时和/或在没有 session 的情况下请求 protected 页面时,这种情况会自动发生,但是有没有办法我自己将 URL 提供给 Spring Security?
最佳答案
如果您只需要一个简单的返回 URL 来检索购物车,那么您最好自己在 AuthenticationSuccessHandler 中实现它。 。您可以查看 SimpleUrlAuthenticationSuccessHandler
的源代码及其父级以获取灵感。
默认登录机制使用 RequestCache
和 SavedRequest
,但其目的是实际重放未经授权的请求。对于你的情况来说,这可能有点过分了。
关于grails - 手动向 Spring Security 提供引用 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10605361/