在上一篇文章引入验证码哪一篇文章
我们会发现在有的浏览器那个验证码在初始化的时候会直接运行2次或者三次,所以第一次怎么填都是验证码错误
出现这个原因呢!那是因为浏览器在第一次加载的时候会执行一次img标签,这个时候会执行一次。第二次是获取img标签的src时会发起一次请求。这就造成验证码第一次输入会报错的原因
下来我们就对这个问题进行处理,规避短时间重复请求也对恶意请求起到了很好的规避
创建RepetitionMiddleware文件
这里是不需要配置中间件的,具体原因
是因为在中间件文件配置了后,就是全局性质得了,你就会发现,login会发起一次请求,验证码的方法会发起一次请求,同时更要命的是验证码会在login请求完之后同一秒发生,也就是说会返回不做请求,那样验证码就看不到了
所以我们可以看看文档发现有这个玩意
这个only是在这个控制器里边,只要verify这个方法会执行中间件,也就是说规避有的浏览器会在打开网站的瞬间同一秒发起俩次请求