做验证码的时候,我用ajax将用户生成的验证码提交到php进行判断
有人说这样做是不对,别人可以绕过js
我不解的是他绕过了js 验证验证码会失效,但我表单也不会提交,因为我表单是写在ajax返回成功状态里的
ajax将用户生成的验证码提交到php进行判断 这边的“用户生成的验证码”是个什么意思?
ajax将用户生成的验证码提交到php进行判断 这边的“用户生成的验证码”是个什么意思?
不明白你的不解是什么
如果是质疑人家的说法,那就大可不必了
我懂了,你是把验证码在js端提取出来单独验证了
这样确实会有安全性问题,要一起验证才能实现限制的效果
为什么呢,他可以看到你成功后执行的代码吧
浏览器有个执行js代码的功能,直接把成功后的代码拿去执行一下不就绕过了吗。。。
除非你验证码提交后返回了什么关键数据,没有这个数据他无法成功提交
这样验证码还是有用的,但你得保证每次关键的数据不太一样,不然别人手动输入一次就把你内容获取到了
类似返回一个新的验证码,然后提交的接口再做判定。
验证码不能用单独的程序验证,必须和用户名密码一起,否则别人不用浏览器直接发数据包就跳过了
ajax验证一次,然后post提交时再验证一次。