学习spring security,跟着视频做一个VueAdmin项目 ,39集我在过滤器里通过request.getParameter(“code”)获取验证码一直为空值 花了我两个小时时间找错,最后发现是login页面发请求我写错了
this.$axios.post('/login?'+qs.stringify(this.loginForm)).then((res)=>{
const jwt = res.headers['Authorization']
//将jwt存储到store中
this.$store.commit("SET_TOKEN",jwt);
this.$router.push('/index')
})
之前加号被我写成了逗号。。。我比对了好几次代码仍然没发现这问题,又倒回去看视频才反应过来 之前也有多次的类似经历。错误都是因为写代码时不够细心,一些符号或是单词拼写错误。希望自己少犯一点这样的低级错误了 理清楚代码逻辑,注意语法。
这次了解到前后端传数据的格式一致 这里security后端采用 .formLogin() ,而一般axios请求自动转换数据格式为json,所以这里用了stringify将数据转换为
form-data形式传给后端。