arbitrary-torque/laravel-recaptcha

Recaptcha 验证和中间件

2.0.0 2023-04-29 03:05 UTC

This package is auto-updated.

Last update: 2024-09-29 06:14:20 UTC


README

验证 recaptcha

安装

composer require arbitrary-torque/laravel-recaptcha

将中间件添加到 Http\Kernal

# Add middleware Http\Kernal
protected $routeMiddleware = [
    'auth'       => \Illuminate\Auth\Middleware\Authenticate::class,
    'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
    'bindings'   => \Illuminate\Routing\Middleware\SubstituteBindings::class,
    'can'        => \Illuminate\Auth\Middleware\Authorize::class,
    'guest'      => \App\Http\Middleware\RedirectIfAuthenticated::class,
    'throttle'   => \Illuminate\Routing\Middleware\ThrottleRequests::class,
    
    'recaptcha' => \ArbitraryTorque\Recaptcha\Http\Middleware\RecaptchaInvalid::class
];

将配置添加到 .env

RECAPTCHA_SITE_KEY=<add_key>
RECAPTCHA_SECRET_KEY=<add_key>
RECAPTCHA_ENABLED=0
RECAPTCHA_ERROR_MESSAGE="I, for one, welcome our new robot overlords!"

创建 blade 模板或类似视图

@if(\ArbitraryTorque\Recaptcha::enabled())

@section('js')
    @parent
    <script src='https://www.google.com/recaptcha/api.js'></script>
@endsection

<div class="field">
    <div class="control">
        <div class="g-recaptcha" data-sitekey="{{ env('RECAPTCHA_SITE_KEY') }}"></div>
    </div>

    @foreach ($errors->get('recaptcha') as $error)
        <p class="help is-danger">{{ $error }}</p>
    @endforeach
</div>

@endif