waavi/recaptcha

Google ReCaptcha for Laravel 5

1.0.5 2016-09-15 15:35 UTC

This package is auto-updated.

Last update: 2024-09-13 23:46:44 UTC


README

Latest Version on Packagist Software License Build Status Total Downloads

简介

这是一个用于Laravel 5.1的reCAPTCHA验证器包。

WAAVI是一家位于西班牙马德里的网络开发工作室。您可以在waavi.com上了解更多关于我们的信息。

Laravel 兼容性

安装和设置

通过composer要求

composer require waavi/recaptcha 1.0.x

或者手动编辑您的composer.json文件

"require": {
    "waavi/recaptcha": "1.0.x"
}

在config/app.php中,将以下条目添加到提供者数组的末尾

Waavi\ReCaptcha\ReCaptchaServiceProvider::class,

并添加以下别名

'ReCaptcha' => Waavi\ReCaptcha\Facades\ReCaptcha::class,

发布配置文件、表单视图和语言条目

php artisan vendor:publish --provider="Waavi\ReCaptcha\ReCaptchaServiceProvider"

在您的环境文件(推荐)或配置文件中输入Google提供的密钥和网站密钥

RECAPTCHA_SITE_KEY=site_key
RECAPTCHA_SECRET_KEY=secret_key

当reCAPTCHA验证失败时,会提供一个简单的英文错误消息。如果您希望自定义它,请在您的validation.php语言文件中添加以下条目

```php
'recaptcha' =>  'Your error message here',
```

用法

在视图中渲染ReCaptcha表单

您可以通过调用在blade表单中渲染ReCaptcha小部件

{!! ReCaptcha::render() !!}

或包含提供的视图(如果选择这样做,则必须作为参数提供sitekey)

@include('recaptcha::recaptcha', ['siteKey' => config('recaptcha.keys.site')])

您还可以通过在官方文档中描述的可用选项来自定义小部件

{!! ReCaptcha::render(['theme' => 'dark']) !!}

or

@include('recaptcha::recaptcha', ['siteKey' => config('recaptcha.keys.site'), 'options' => ['theme' => 'dark']])

验证ReCaptcha

有两种方法可以验证ReCaptcha。您可以通过提供的Facade手动完成

```php
$value = \Input::get('g-recaptcha-response');
$gResponse = \ReCaptcha::parseInput($value);

if ($gResponse->isSuccess()) {
    return true;
}
else {
    $errors = $gResponse->getErrorMessages();   // Returns an array of error messages in the form of errorCode => errorMessage
    var_dump($errors);
}
```

或者通过提供的Validator扩展以更方便的方式完成,将以下规则添加到您的规则数组中

```php
$rules = [
    /** Your rules ... **/
    'g-recaptcha-response' => 'recaptcha',
];
```