NAME
Captcha::noCAPTCHA - Simple implementation of Google's noCAPTCHA reCAPTCHA for perl
SYNOPSIS
The following is example usage to include captcha in page.
my $cap = Captcha::noCAPTCHA->new({site_key => "your site key",secret_key => "your secret key"});
my $html = $cap->html;
# Include $html in your form page.
The following is example usage to verify captcha response.
my $cap = Captcha::noCAPTCHA->new({site_key => "your site key",secret_key => "your secret key"});
my $cgi = CGI->new;
my $captcha_response = $cgi->param('g-recaptcha-response');
if ($cap->verify($captcha_response',$cgi->remote_addr)) {
# Process the rest of the form.
} else {
# Tell user he/she needs to prove his/her humanity.
}
METHODS
html
Accepts no arguments. Returns CAPTCHA html to be rendered with form.
verify($g_captcha_response,$users_ip_address?)
Required $g_captcha_response. Input parameter from form containing g_captcha_response Optional $users_ip_address.
errors()
Returns an array ref of errors if verify call fails. List of possible errors:
missing-input-secret The secret parameter is missing. invalid-input-secret The secret parameter is invalid or malformed. missing-input-response The response parameter is missing. invalid-input-response The response parameter is invalid or malformed. http-tiny-no-response HTTP::Tiny did not return anything. No further information available. status-code-DDD Where DDD is the status code returned from the server. no-content-returned Call was successful, but no content was returned.
response()
Returns the response hashref for the most recent captcha response.
FIELD OPTIONS
Support for the following field options, over what is inherited from HTML::FormHandler::Field
site_key
Required. The site key you get when you create an account on https://www.google.com/recaptcha/
secret_key
Required. The secret key you get when you create an account on https://www.google.com/recaptcha/
theme
Optional. The color theme of the widget. Options are 'light ' or 'dark' (Default: light)
noscript
Optional. When true, includes the <noscript> markup in the rendered html. (Default: false)
api_url
Optional. URL to the Google API. Defaults to https://www.google.com/recaptcha/api/siteverify
api_timeout
Optional. Seconds to wait for Google API to respond. Default is 10 seconds.
SEE ALSO
The following modules or resources may be of interest.
HTML::FormHandlerX::Field::noCAPTCHA
See it in action at https://www.httpuptime.com
AUTHOR
Chuck Larson <clarson@cpan.org>
CONTRIBUTORS
leejo <leejo@cpan.org>
COPYRIGHT & LICENSE
Copyright 2015, Chuck Larson <chuck+github@endcapsoftwware.com>
This projects work sponsered by End Cap Software, LLC. http://www.endcapsoftware.com
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.