我正在考虑在我正在开发的网站上使用验证码(或 Recaptcha)的替代方法来填写注册表单。
我相信验证码会对用户体验产生负面影响。我正在研究使用隐藏字段,但显然它们根本没有效果(参考:http ://radio.javaranch.com/davo/2008/10/15/1224063498569.html )
对该文章的评论指出:
作为我工作的一部分(不,不是为了发送垃圾邮件)编写 CAPTCHA 破解器的人,我可以向您保证,隐藏字段绝不会绊倒我。正如另一张海报提到的,我检查了有线流量,并不太注意表单的 HTML 中发生了什么。
这让我相信垃圾邮件机器人会直接向服务器发出 POST 请求,而不是请求表单并填写它。
如果是这种情况,如果我创建一个隐藏的只读字段,并使用存储在 SESSION 中的哈希预填充该字段怎么办。当用户提交表单时,我可以比较这些值。这可以作为一种远离垃圾邮件的方式,还是我在监督什么?
如果表单从未被请求,我当然不会找到存储在会话中的任何散列,因此可以忽略该请求。