我写了一个 AS3 脚本,基本上这个脚本只是一个允许用户输入他们的电子邮件地址的表单。在启动该网站几个月后,我发现我收到了很多 BOT 垃圾邮件发送者。我知道,防止 BOT 的一种方法是使用 recaptcha 的东西,除了 recaptcha,还有什么方法可以防止 bot 提交我的 AS3 表单?
mcfadder_09
问问题
838 次
2 回答
1
如何在表单中添加额外的输入,然后用 CSS 样式隐藏它。
然后,如果填写了该字段,您可以很确定它是一个机器人。
- 机器人通常不会处理 CSS 规则,因此它们会看到文本输入并填写
- 大多数人在浏览时都启用了 CSS,所以他们不会看到文本输入,它会是空白的
对于禁用了 CSS 的合法用户,您可以在文本输入中添加一个标签(也通过 css 隐藏),告诉他们输入什么。
例如在您的表单中添加这样的内容
<div style="display:none">
<label for="hidden-textbox">What is 10 plus 5?</label>
<input type="text" id="hidden-textbox" name="hdn-txt" maxlength="20"/>
</div>
当您处理表单提交时:
- 文本输入中没有任何内容是合法用户
- 您告诉他们在标题中输入的值是合法用户
- 除空以外的任何值或您指定的值是垃圾邮件,您可以丢弃它
于 2009-06-09T12:09:18.663 回答
0
除了 Nils 的出色回答之外,请参阅之前的 Stack Overflow 问题,了解对当前流行的一些反机器人措施的广泛调查。
另外,我不确定您是否要使用 AS3,因为它既是服务器端,也可能比您需要的更复杂。尽管如此,如果您使用 Flash 应用程序提交表单(而不是将表单信息嵌入到您的 HTML 中),那么机器人将更难解析和提交。
于 2009-06-09T16:09:06.743 回答