browserlife / zf2-recaptcha
为 Zend Framework 2 (ZF2) 的 ReCaptcha v2.0 模块
v1.0.1
2015-10-28 23:18 UTC
Requires
- php: >=5.3.0
- zendframework/zendframework: ~2.3
This package is not auto-updated.
Last update: 2024-09-28 17:43:42 UTC
README
此模块使您能够在 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 测试 -> 将在接下来的几天内完成
- 一些错误处理需要改进
- 更好的文档
有问题吗?
如果您对我的代码有任何问题或疑问,请创建一个问题。由于我正在为自己的项目使用此模块,我对此保持更新的兴趣!