smkbd/recaptcha-checkbox

Google reCAPTCHA v2 复选框

v1.0.0 2023-12-12 15:56 UTC

This package is auto-updated.

Last update: 2024-09-12 17:44:16 UTC


README

此软件包允许您轻松地将Google reCAPTCHA v2复选框集成到任何表单中。

版本支持

安装

composer require smkbd/recaptcha-checkbox

配置

在您的.env文件中添加以下环境变量

RECAPTCHA_SITE_KEY=recaptcha_site_key_here
RECAPTCHA_SECRET_KEY=recaptcha_secret_key_here

您可以从Google reCAPTCHA管理员获取这些密钥

用法

要在表单中启用reCAPTCHA,您需要在两个地方进行更改,一个是在<form>中,另一个是在处理表单请求的控制器方法中。

表单

在您希望复选框显示的地方包含blade指令@recaptcha

控制器

在控制器中,您只需将\Smkbd\RecaptchaCheckbox\RecaptchaRequest $request用作方法参数,而不是使用\Illuminate\Http\Client\Request $request

例如,在routes/web.php

Route::post('/comments', [\App\Http\Controllers\CommentController::class, 'store'])->name('comments.store');

app/Http/Controllers/CommentController.php

use Smkbd\RecaptchaCheckbox\RecaptchaRequest;

class CommentController extends Controller{
    ...

    public function store(RecaptchaRequest $request){
        
        // Your logic here
    
    }

    ...
}

您可以在控制器内部应用自己的验证,就像通常做的那样。但是,如果请求包含有效的验证码履行,则RecaptchaRequest将首先验证请求。

翻译

要翻译验证码的消息,您需要首先发布供应商文件。

php artisan vendor:publish --tag=recaptcha

这将在resources/lang/vendor/recaptcha目录中发布翻译文件。