Jquery Ajax验证码验证

Jquery Ajax验证码验证,jquery,ajax,forms,security,captcha,Jquery,Ajax,Forms,Security,Captcha,通过ajax验证CAPTCHA是否合理(或安全)? 我想在不重新加载任何页面的情况下放置一个注册表单。安全吗?(我正在使用验证[1]和表单插件) [1] 即使您使用AJAX,它仍然是服务器端的,因为您需要调用服务器来验证它。您不能依靠JavaScript来保护任何东西。您可以将其作为第一次通过,但仍然需要在服务器上执行验证码验证(正如您计划执行的那样)。例如,请参见: 我对完整AJAX解决方案(无页面重新加载)的担忧是,用户可能会绕过返回的返回值,即使验证码无效也会继续。但是,您可以跟踪服务器会

通过ajax验证CAPTCHA是否合理(或安全)? 我想在不重新加载任何页面的情况下放置一个注册表单。安全吗?(我正在使用验证[1]和表单插件)


[1]

即使您使用AJAX,它仍然是服务器端的,因为您需要调用服务器来验证它。

您不能依靠JavaScript来保护任何东西。您可以将其作为第一次通过,但仍然需要在服务器上执行验证码验证(正如您计划执行的那样)。例如,请参见:


我对完整AJAX解决方案(无页面重新加载)的担忧是,用户可能会绕过返回的返回值,即使验证码无效也会继续。但是,您可以跟踪服务器会话中的任何验证码故障,并在注册表单的末尾再次检查结果,因为最终一切都将在服务器端完成。如果验证码从未有效,则无论您从该客户机收到任何其他数据,您都必须拒绝注册。

实现这一点的合理方法如下:

1) 请求表单页面时,生成特定于会话的服务器端密钥

2) 当用户按下“提交”键时,使用AJAX调用将用户输入的验证码文本发送到服务器

3) 服务器检查用户提交的值。如果它等于验证码中的文本,则返回步骤1中生成的服务器端密钥


4) 浏览器现在具有服务器端密钥。表单提交后,检查浏览器指定的服务器端密钥是否与步骤1中生成的服务器端密钥匹配。如果是这样,用户必须已通过验证码,因此请处理该请求。

是的,可以使用php和ajax完成,但每次加载该重新加载按钮时,都需要清除缓存。这是一个很好的例子


编辑|我还发现了文章链接

太棒了,在你发布之前我就在读这篇文章哈哈,谢谢