scaffold-digital / laravel-recaptcha
Laravel 的 Google Recaptcha 模块
Requires
- php: ^7.0
- illuminate/support: ^5.5
Requires (Dev)
- orchestra/testbench: ^3.5
- phpunit/phpunit: ^6.5
This package is not auto-updated.
Last update: 2024-09-26 14:52:24 UTC
README
此模块是 Google reCAPTCHA 小部件的一个易于使用的实现。
入门指南
要使用此包,只需使用 Composer 安装。安装完成后,您需要指定您的站点密钥和密钥(来自 https://www.google.com/recaptcha/admin),然后按照几个简单的步骤将 reCAPTCHA 小部件添加到视图中并验证响应。
通过 Composer 安装
要安装此模块,只需在项目目录中运行以下命令...
composer require scaffold-digital/laravel-recaptcha
设置密钥
一旦您获取了您的站点密钥和密钥(来自 https://www.google.com/recaptcha/admin),您需要将它们指定在配置文件中。
基本配置
对于最基本的配置,创建文件 "config/recaptcha.php" 并粘贴以下内容,相应地更改密钥...
<?php return [ 'key' => 'YOUR SITE KEY', 'secret' => 'YOUR SECRET KEY', ];
高级配置
如果您想进一步扩展 Recaptcha 功能,可以轻松地通过发布完整的配置并相应地修改它来实现。运行以下命令将允许您将完整的配置发布到您的配置目录。
php artisan vendor:publish
显示 reCAPTCHA 小部件
要在视图中显示 reCAPTCHA 小部件,您需要包含额外的 JavaScript 代码和一个 DOM 元素。这两个都通过 Recaptcha 类提供。
JavaScript 代码
只需在 <head> 标签关闭之前添加 {!! Recaptcha::getScript(); !!}
<head> ... {!! Recaptcha::getScript(); !!} </head>
小部件
只需在您想显示小部件的位置添加 {!! Recaptcha::getWidget(); !!}。例如
<body> ... <form method="POST"> <div class="form-group">{!! Recaptcha::getWidget(); !!}</div> </form> ... </body>
验证 reCAPTCHA 响应
您有两个简单的方法来验证 reCAPTCHA 响应。这可以在任何点手动完成,也可以作为 Laravel 内置表单验证的一部分自动完成。
自动表单验证
此包自动创建一个新的验证类型 'recaptcha',您可以使用它来验证表单响应。当表单提交时,reCAPTCHA 使用字段 'g-recaptcha-response' 提供响应。例如
$validator = Validator::make($request->all(), [ 'g-recaptcha-response' => 'recaptcha' ]);
手动验证
如果您出于任何原因想要手动验证 reCAPTCHA 响应,可以通过调用 verify 方法来完成。例如
$valid = Recaptcha::verify($request->input('g-recaptcha-response'));