我正在使用 spring security 开发一个 Web 应用程序。在 web-security-context.xml 中我发现了这个,
<form-login login-page="/timeres_login"
authentication-failure-url="/timeres_login?login_error=1"
default-target-url="/userlogin"
timeres_login.jsp 是日志页面,可以输入用户名和密码。当用户名和密码不匹配时,显示/timeres_login?login_error=1 url。当它们匹配时,显示/userlogin url。简单来说,这可以正常工作。
现在我想将登录页面更改为 adminLogin.jsp,为此我将 timeres_login 更改为 adminLogin,但它仍然适用于 timeres_login 而不适用于 adminLogin。
我的理解是<form-login />
标签不正确?或者我应该做任何其他事情来完成这项工作吗?
最佳答案
您的理解似乎是正确的。 - 这可能是一些部署/刷新问题。
您应该使用:
<form-login login-page="/adminLogin"
authentication-failure-url="/adminLogin?login_error=1"
default-target-url="/userlogin" />
当然,您需要一些 View 解析器将 adminLogin
映射到 adminLogin.jsp
- 但因为这是典型的通用 bean,所以如果 View 解析器将 timeres_login
映射到 timeres_login.jsp
,那么它也会将 adminLogin
映射到 adminLogin.jsp
有关更多详细信息,请查看 Spring-Security-Reference:
- Chapter 8.1.15
- 3.3 Java Configuration and Form Login (它是java相对部分,但解释得更好)
- 4.2.3 Form and Basic Login Options
关于java - spring中form-login标签的作用是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35030090/