一. 请求传的参数名称错误,且没有配置usernameParameter
比如登陆的时候向后端发起请求,用户名的参数名称是name或者nickname,并且没有配置.usernameParameter()的话,后端是获取不到值的。
解决方法
1.将请求参数名改为username
2.在config中配置.usernameParameter(“参数名”)
比如.usernameParameter(“name”) .usernameParameter(“nickname”)
二. security的config里面设置了.formLogin(),却没有使用表单提交
比如使用axios进行post请求提交。 解决方法
1.改为表单提交
2.伪造表单提交
let data
= this.trans(this.user
);
axios
.post(url
,data
,{
headers
: {
'Content-Type':'application/x-www-form-urlencoded'
}
})
trans
:function(user
){
let url
= "";
for (let k
in user
) {
let value
= user
[k
] !== undefined
? user
[k
] : "";
url
+= `&${k}=${encodeURIComponent(value)}`;
}
return url
? url
.substring(1):"";
}