前端代码
export function register(user,captcha) {
return request({
url: `/user/register/${captcha}`,
method: 'post',
data: user,
})
}
后端代码
@PostMapping("/register/{captcha}")
public R<User> register(HttpServletRequest request, @RequestBody User user, @PathVariable String captcha) {
//验证码校验
if (!captcha.equals(request.getSession().getAttribute("captcha"))) {
return R.error("验证码错误");
}
}
当生成验证码为A4uI时,后端输出“地址拦截到请求:/user/register/A4uI”表明能接收到正确的地址
但是就是不能直接获取这个A4ul为captcha,导致一直判断验证码错误
后台是不是开启了跨域,服务端会生成有一个JSESSIONID的东西,并返回给前端,前端在下一次请求的时候需要将这个JSESSIONID放在cookie中,然后服务端才能根据这个sessionid获取到对应的session