重要提示:1.0 版 reCAPTCHA API 不再受支持,请升级到 2.0 版。了解详情
reCAPTCHA Perl 模块提供了一种添加人机识别系统 ,这有助于您阻止漫游器滥用这些内容。该模块将 reCAPTCHA API。
要将 reCAPTCHA 与 Perl 结合使用,您可以下载 reCAPTCHA Perl Module(由 Andy Armstrong 贡献)。您需要将此模块安装到 计算机(网络服务器)。此模块依赖于 LWP::UserAgent 模块 和 HTML::Tiny,两者均支持 还需要进行安装。下面是安装 Perl 的一些基本说明 模块。
快速入门
注册 API 密钥并下载 reCAPTCHA Perl 模块后,以下是有关 在您的网站上安装 reCAPTCHA。
客户端(如何显示人机识别系统图片)
如果您想使用 Perl 模块显示 reCAPTCHA 微件,则需要将 这行代码位于文件顶部附近,包含表单元素,reCAPTCHA 微件将 显示:
use Captcha::reCAPTCHA;
然后,您需要创建一个 reCAPTCHA 实例:
my $c = Captcha::reCAPTCHA->new;
最后,如需显示 reCAPTCHA widget,您必须将以下代码行 <form>代码中:
print $c->get_html("your_public_key");
因此,您的代码可能如下所示:
use Captcha::reCAPTCHA; my $c = Captcha::reCAPTCHA->new; print <<EOT; <html> <body> <form action="" method="post"> EOT print $c->get_html("your_public_key"); print <<EOT; <input type="submit" value="submit" /> </form> </body> </html> EOT
别忘了将 your_public_key
替换为您的
API 密钥。
服务器端(如何测试用户输入的答案是否正确)
以下概要介绍了如何验证 reCAPTCHA 答案:
use Captcha::reCAPTCHA; my $c = Captcha::reCAPTCHA->new; my $challenge = param 'recaptcha_challenge_field'; my $response = param 'recaptcha_response_field'; # Verify submission my $result = $c->check_answer( "your_private_key", $ENV{'REMOTE_ADDR'}, $challenge, $response ); if ( $result->{is_valid} ) { print "Yes!"; } else { # Error print "No"; }