browserlife/zf2-recaptcha

为 Zend Framework 2 (ZF2) 的 ReCaptcha v2.0 模块

v1.0.1 2015-10-28 23:18 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:43:42 UTC


README

构建状态: build status

此模块使您能够在 ZendFramework2 (ZF2) 项目中使用新的 ReCaptcha 链接

由于 ZendFrameworkService\ReCaptcha 似乎已经停止开发,并且仍然停留在 RCv1 版本,因此我创建了此模块。

安装

使用 composer

只需将以下行添加到您的需求中

"browserlife/zf2-recaptcha": "dev-master"

然后运行

php composer.phar update

由于使用 Adapter\Socket 时存在 SSL-Cert 问题,请安装 php-curl!

然后在 application.config.php 中激活模块

```php
return array(
    'modules' => array(
        // ...
        'BrlReCaptcha',
    ),
    // ...
);
```

获取您的私钥

要使用此服务,您必须使用您的 Google 帐户在 Google ReCaptcha 上注册。

使用方法

使用 Zend\From

此模块与 ZendFrameworkService\ReCaptcha 类似。

只需将以下行添加到表单创建中

$element = new \Zend\Captcha\Captcha('g-recaptcha-response');
$element->setCaptcha(new BrlReCaptcha\ReCaptcha(array('private_key' => 'YOUR_SECRET FROM GOOGLE', 'public_key' => 'YOUR_PUBLIC_KEY', 'theme' => 'dark')));
$form->add($element);

重要:由于 Google 的 JS 创建了此虚拟输入,元素名称必须为 g-recaptcha-response。

请记住将此元素添加到您的验证链中。

注意:主题参数不是必需的。默认使用浅色主题。

它与其他内置的验证码解决方案类似。

使用 ServiceManager

如果您想自己实现视图,只需使用 Service\ReCaptchaService。它处理您的代码与 ReCaptcha API 之间的整个通信。

$recaptcha = $serviceLocator->get('BrlRecaptcha\Service\ReCaptcha');

其他

查看源代码!很容易理解。

待办事项

  • 缺少 PHPUnit 测试 -> 将在接下来的几天内完成
  • 一些错误处理需要改进
  • 更好的文档

有问题吗?

如果您对我的代码有任何问题或疑问,请创建一个问题。由于我正在为自己的项目使用此模块,我对此保持更新的兴趣!