在使用django 作为后端生成验证码生成一个url供前端访问时,出现了每次生成的图片验证码和cookies里面缓存的验证码值总是不一致,这是为什么呢,
首先在后端设置验证码的步骤是没有错的,生成一个response,里面包含用pill画出的验证码,前端请求上来就设置cookies,用于验证码验证,那么这个时候就会有冲突了,前端获取和后端设置cookies之间是同时的,由于后端设置cookies会慢一些,所以这就能够说得通获取的cookies里面的值为什么是上一次验证码里的值了,前端获取cookies的速度肯定要快于后端设置cookies值得,那么怎么解决这个问题呢?
其实也简单,加个定时器延迟获取即可。
function(val){
setTimeout(() => {
var code=Cookies.get(‘code’)
console.log(code);
}, 500);
}