Invisible reCAPTCHA Integration with Laravel

Packages

June 8th, 2017

Invisible reCAPTCHA Integration with Laravel

Invisible reCAPTCHA is an improved version of reCAPTCHA v2 (No CAPTCHA) developed by Google, and users now only need to click the button: “I’m not a robot” to prove they are human.

In Invisible reCAPTCHA, there is no longer an embedded CAPTCHA box for users to interact with. It’s totally invisible with only a badge showing on the bottom of the page so users your website know you are using this technology. (The badge can be hidden, but this is not recommended.)

Here is an example what it looks like if you’re using Invisible reCAPTCHA:

I created a simple package to help you integrate Invisible reCAPTCHA into your Laravel projects quickly and easily!

Invisible reCAPTCHA Installation

composer require albertcht/invisible-recaptcha

Next, add the ServiceProvider to the providers array in app/config/app.php.

AlbertCht\InvisibleReCaptcha\InvisibleReCaptchaServiceProvider::class,

Configuration

Before you set your config, you need to apply for your API keys on https://www.google.com/recaptcha/admin first.

While choosing the type of your reCAPTCHA, remember to choose invisible reCAPTCHA to make it work in the background.

After you’ve registered a new site, take your keys and add them to your .env file:

INVISIBLE_RECAPTCHA_SITEKEY={siteKey}
INVISIBLE_RECAPTCHA_SECRETKEY={secretKey}
INVISIBLE_RECAPTCHA_BADGEHIDE=false
INVISIBLE_RECAPTCHA_DEBUG=false

If you set INVISIBLE_RECAPTCHA_BADGEHIDE to true, you can hide the badge logo.

You can see the binding status of those CAPTCHA elements on browser console by setting INVISIBLE_RECAPTCHA_DEBUG as true.

reCAPTCHA Usage

Display reCAPTCHA in Your View

{!! app('captcha')->render(); !!}

With custom language support:

{!! app('captcha')->render($lang = null); !!}

Validation

Add 'g-recaptcha-response' => 'required|captcha' to rules array.

<br></br>$validate = Validator::make(Input::all(), [
'g-recaptcha-response' => 'required|captcha'
]);

Check out the invisible-recaptcha package for the documentation and code.

Filed in:

Albert Chen

Hello, I'm Albert Chen, a software architect, Laravel artisan and Swoole enthusiast located in Taiwan

My website: https://albert-chen.com