gpt4 book ai didi

java - Spring 安全: Form login special characters

转载 作者:行者123 更新时间:2023-12-01 04:45:46 25 4
gpt4 key购买 nike

我在使用 Spring Security 表单登录时需要解决问题的帮助。表单登录将带有转义特殊字符的用户名发送到服务器,但 spring 不会转义此参数并且在数据库中找不到用户。

我使用自定义 UserDetailsS​​ervice 但用户名参数包含 scape 特殊字符。可以转义特殊字符吗?

我正在尝试对特殊字符进行转义,但更改失败。

数据:- Spring 3.1.1.发布- Spring安全3.1.1.发布- Tomcat 7.X

编辑:

我认为通过将 enconding 过滤器放入 web.xml 文件中可以解决问题。

<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

最佳答案

您不必做任何复杂的事情,只需使用设置的标准字符串

 <form name="f" id="f" action="<c:url value='/j_spring_security_check'/>" method="POST">
<label for="j_username">E-mail :&nbsp;</label><input type='text' id='j_username' name='j_username'/><br/>
<label for="j_password">Password :&nbsp;</label><input type='password' id='j_password' name='j_password'><br>

关于java - Spring 安全: Form login special characters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15880366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com