2

我写了一个 AS3 脚本,基本上这个脚本只是一个允许用户输入他们的电子邮件地址的表单。在启动该网站几个月后,我发现我收到了很多 BOT 垃圾邮件发送者。我知道,防止 BOT 的一种方法是使用 recaptcha 的东西,除了 recaptcha,还有什么方法可以防止 bot 提交我的 AS3 表单?

4

2 回答 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 回答