一般网站的验证码校验是怎么做的?
原来我们是放在后端做校验的,现在为了更好的用户体验放到前端来,但是验证码的check接口只支持一次调用,调用完老的验证码就失效了。
问题是:后端是否还要做验证码的校验?如何校验?
我想到的方案是,后端提供一个接口给前端做实时的校验,并根据sessionid记录验证的结果。当表单提交的时候,如果发现之前已经校验通过便不再校验,否则后端校验
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
用户访问一个页面,如果是第一次,那么response里面的set-cookies字段就为客户端设置cookies
下次访问的时候,用户就携带cookies去请求
当用户请求的页面有验证码的时候,那么后端就会生成验证码文本,然后画成图片,记录用户请求的cookies,与验证码绑定
用户输入验证码,提交到后端,后端验证cookies和输入的验证码是否匹配
验证码不能在前端生成,不然爬虫什么的直接就爬了,验证码是防止机器人的,而不只是让用户更麻烦
永远不要相信前端
如果对上面的话还有怀疑,请参考另一个问题:图片验证码是怎么破解的
呵呵,反正谷歌的是全民打字