Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 登录后使用spring安全性重定向到特定URL_Java_Spring Security - Fatal编程技术网

Java 登录后使用spring安全性重定向到特定URL

Java 登录后使用spring安全性重定向到特定URL,java,spring-security,Java,Spring Security,我有一个开发项目的案例。 我有一些课程链接在我的应用程序的页脚,每当用户点击相同的,我们会显示登录或注册弹出窗口,如果他没有登录,或重定向到课程页面,如果他登录。 所以现在我想要的是,每当用户在登录前单击课程时,他/她应该在登录后重定向到课程详细信息页面 我正在使用spring安全性进行身份验证。让我知道如何使用spring安全认证来实现这一点?这是一个简单的用例 页脚中的链接应指向安全区域,例如…/secured/page1、…/secured/page2。您可以在security-beans

我有一个开发项目的案例。 我有一些课程链接在我的应用程序的页脚,每当用户点击相同的,我们会显示登录或注册弹出窗口,如果他没有登录,或重定向到课程页面,如果他登录。 所以现在我想要的是,每当用户在登录前单击课程时,他/她应该在登录后重定向到课程详细信息页面


我正在使用spring安全性进行身份验证。让我知道如何使用spring安全认证来实现这一点?

这是一个简单的用例

页脚中的链接应指向安全区域,例如…/secured/page1、…/secured/page2。您可以在security-beans.xml中配置此安全区域是什么

当用户单击并试图访问安全资源时,spring会检查用户是否已通过身份验证。如果没有,它会将他重定向到登录页面。在登录页面中,您可以添加创建帐户的链接

以下是配置安全区域的方式:

<sec:http authentication-manager-ref="authenticationManager">
   <sec:intercept-url pattern="/secured/**" access="ROLE_USER" />
   ...
Spring保存重定向url,如果用户未登录,他将被重定向到登录页面,登录后Spring使用重定向uri并将他发送到“安全资源”,即您案例中的课程页面。详细信息:登录后,类SavedRequestAwareAuthenticationSuccessHandler使用包含原始请求URI的RequestCache


如果您需要弹出窗口,请参见:

是的,您是对的,但我的情况略有不同。我需要发送用户到课程详情页面,如果他/她点击课程链接,然后登录。如果他直接登录,他将按照我们的流程重定向到主页。您说过,每当用户在登录前单击课程,他应该在登录后立即重定向到课程详细信息页面。如果是这样的话,我已经更新了我的答案——看一看。让我澄清一下:我在我的登录页面上有一些链接,还有一个使用spring安全性的登录表单。现在,当用户直接登录时,他/她将登录并重定向到主页。但是,如果用户在登录之前单击链接,则会打开一个弹出窗口,用户可以从那里登录,但现在我们需要将其重定向到其他页面。我怎样才能做到这一点?如果你有任何运行演示,请提供它的弹出窗口是至关重要的?这是一项要求吗?重定向到登录页面是否足够好?