解决spring security 整合到spring boot中,UserDetailsService接口的loadUserByUsername方法参数username输入为空问题。
一 检查参数名是否与页面传递的一致
//...其他代码
http.formLogin()
.usernameParameter("account")
.passwordParameter("password")
//...其他代码
注意这里的参数名称与界面的参数名称一致
二 检查提交方式是否为表单
spring security 像上面的配置,传递参数必须是POST的表单方式,如果是ajax请求需要注意参数类型
参考:
function ajaxPostFormJSON(url,params,successCallback,failCallback) {
$.ajax({
type:'post',
url:url,
data:params,
dataType:'json',
contentType:'application/x-www-form-urlencoded',
success:function (res) {
if (res.code == 200){
successCallback(res.data);
} else{
if (failCallback){
failCallback(res.message,res.code);
}else{
if (res.code==401){
alert(res.message,{icon:5});
setTimeout(function (){
top.window.location.href="/oauth/authorize";
},1500)
return false;
}
alert(res.message,{icon:5});
}
}
}
})
}
原创文章,作者:506227337,如若转载,请注明出处:https://blog.ytso.com/243590.html