javaweb验证码明明输入正确却还是提示错误,验证码session不同步、不一致问题

情况是,退出账号后,在登录界面输入验证码,有时验证码明明输入正确,却还是提示错误。
通过在Idea里debug调试发现,生成验证码之后将验证码赋予了sessionA,结果输入完四位验证码验证的时候,用来校验的session不是sessionA,而是sessionB,这是一个典型的session混乱问题。
经过调查,发现登录界面不只有获取验证码的接口,还有一个获取公告的接口,问题就是在这里了。
有时候呢,获取验证码的接口跑在了获取公告的接口的前头,那校验的时候后台就能获取到携带正确验证码的session,但是当获取公告的接口跑在了验证码的接口的前头,那校验的时候传送到后台的session就没有携带验证码,就会导致验证码校验失败。
哎,我的解决方法是为验证码加了一个onload事件,等验证码访问完了之后,才去访问公告接口。
当然也可以将验证码和公告全部写在一个接口里返回,朋友若有另外的方法,请提一下。

你可能感兴趣的:(javaweb验证码明明输入正确却还是提示错误,验证码session不同步、不一致问题)