2010-07-18 131 views

回答

1

你真的不能这样做,因为在大多数情况下,服务器端生成的图像将它存储在会话中的CAPTCHA密钥中,无法直接从客户端访问。

我甚至不想从安全角度思考如果您的问题实际上有一个解决方案,而不是使用Ajax。

+1

纠正我,如果我在这里是愚蠢的,但是什么阻止你发送带验证码键和用户输入到服务器的ajax请求,并让服务器回复'有效'或'无效'? – quantumSoup 2010-07-18 08:14:47

+1

@Aircule,OP询问是否有可能在没有回传的情况下做到这一点。当然,可以从服务器返回“有效”或“无效”的结果。 – 2010-07-18 08:16:31

+1

他的意思是验证CAPTCHA客户端?这有什么意义? – quantumSoup 2010-07-18 08:22:38

1

CAPTCHA测试的目的之一是评估在远端是否有人坐。如果您允许在客户端进行检查,那么您对客户端应如何告知服务器验证失败的计划是什么?
你将如何防止信号被攻击者伪造?
(或者它只是你想要替换的AJAX?)

+0

谢谢你们的回应。是的,我是jquery的新手。是的,我想用有效或无效的简单Ajax进行响应。 – Razan 2010-07-18 09:46:02

0

如果我正确理解你,你需要帮助做一个ajax回发验证CAPTCHA测试,也许只是没有措辞雄辩。

在jquery文档中有一个如何使用远程验证来验证CAPTCHA的工作示例,这样验证插件负责不提交表单,如果该验证失败并且验证在服务器上实际执行。它应该是。

见下文:

http://docs.jquery.com/Plugins/Validation#Using_remote_validation_to_help_with_captchas

希望帮助拉赞。

+0

谢谢menzies。这正是我所期待的。你用过这个例子吗?您能否告诉我在process.php文件中需要做些什么? 谢谢。 – Razan 2010-07-19 05:19:56

+0

嗨Razan。我没有使用远程插件来验证capthca,但为了使远程验证正常工作,它必须返回true或false值。如果您从这里下载.zip压缩文件,(http://plugins.jquery.com/project/validate),所有需要的.php文件都在capthca demo中。 – menzies 2010-07-26 02:59:20