Invisible reCAPTCHA Integration with Laravel

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.


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

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


Filed in: Laravel Packages / recapcha


Newsletter

Join the weekly newsletter and never miss out on new tips, tutorials, and more.

Laravel News Partners

Laravel Jobs

Senior Backend Engineer
Remote
64 Robots
Senior Laravel Developer
Atlanta, GA
Helium LLC
Full-Stack Developer (JS - Vue.js, PHP - Laravel)
US Remote / Telecommute
TTEC Digital
Backend Engineer
Brooklyn, NY
Stationhead
Back-End Developer
Orlando, FL
Christ for all Nations
Senior Software Developer
Nashville, TN
Bernard Health
Full Stack PHP Developer – (Laravel & Vue.js) - local only
Salt Lake City, Utah
Swell