登录页面
<web-app>
<security-constraint>
<web-resource-collection>
<web-resource-name>User Auth</web-resource-name>
<url-pattern>/auth/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
<role-name>manager</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>login.jsp</form-login-page>
<form-error-page>error.jsp</form-error-page>
</form-login-config>
</login-config>
</web-app>
来自web.xml的
内容
sortTable
基于表单的身份验证工作正常。但是,如果我直接从http://localhost:8080/index.jsp/j_security_check?j_username=admin&j_password=admin访问index.jsp是行不通的。
为什么它不起作用?
答案 0 :(得分:0)
由于您希望从POST
请求进行登录,因此您不能(如果我错了请更正)直接从浏览器URL发送。
解决方案是执行另一个页面,loginRedirect.jsp
将自动发送POST请求。
这将使用URL中传递的参数填充<form>
并自动发送click
事件。 Javascript中的所有内容。
这可以在login
页面之外完成。如果URL中有一些参数,请自动发送表单。
使用此answer作为源,您可以轻松读取参数(并检查是否存在)并设置<input>
的值。然后点击submit
按钮。