我们有一些购物车页面可以同时使用访客路径和用户路径。我们希望允许用户在此过程中随时登录,但不想创建另一个登录页面。我希望我们可以简单地将用户重定向到现有登录名并告诉 Spring Security 要返回的 URL。
我知道当会话超时和/或在没有会话的情况下请求受保护的页面时,这会自动发生,但是有没有办法我可以自己将 URL 提供给 Spring Security?
我们有一些购物车页面可以同时使用访客路径和用户路径。我们希望允许用户在此过程中随时登录,但不想创建另一个登录页面。我希望我们可以简单地将用户重定向到现有登录名并告诉 Spring Security 要返回的 URL。
我知道当会话超时和/或在没有会话的情况下请求受保护的页面时,这会自动发生,但是有没有办法我可以自己将 URL 提供给 Spring Security?
如果您只需要一个简单的返回 URL 来检索购物车,那么您最好自己在AuthenticationSuccessHandler中实现它。您可以查看来源SimpleUrlAuthenticationSuccessHandler
及其父级以获取灵感。
默认登录机制使用RequestCache
和 a SavedRequest
,但这实际上是为了重放一个未经授权的请求。在你的情况下,这可能是矫枉过正。