ZfcUser ReCaptcha v2

时间:2016-01-13 14:30:52

标签: php zend-framework2 zfcuser recaptcha

我想将Google的ReCaptcha版本2添加到ZfcUser RegisterForm。我按照Zend Framework 2: How to properly replace Figlet with reCaptcha on zfcUser中提到的那样做了,它运行正常。

然后我添加了回归版本2的作曲家:

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

然后我改变了我的zfcuser.global.php

'form_captcha_options' => array(
    'class'   => 'BrlReCaptcha\ReCaptcha'
    'options' => array(
        'expiration'=> 300,
        'timeout'   => 300,
        'theme'     => 'dark',
    ),
),

因此,我在页面上获得了正确的注册表单。验证码(版本2)提供验证并成功通过验证。但是从服务器端我得到验证码元素为空的错误。

不同之处在于这些元素(v1和v2)发送了各种参数进行验证:

recaptcha v1将此params发送到服务器进行处理:

captcha[recaptcha_challenge_field]
captcha[recaptcha_response_field]
recaptcha_challenge_field
recaptcha_response_field

recaptcha v2将此params发送到服务器进行处理:

g-recaptcha-response

谁知道怎么样?也许还有另一种解决方案可以整合Google的ReCaptcha v2。

2 个答案:

答案 0 :(得分:0)

我最近不得不将新的nocaptcha recaptcha添加到ZF2应用程序中。花了很多时间来尝试整合它后,Zend'方式,这是不成功的,我决定按照这里的说明(http://webdesign.tutsplus.com/tutorials/how-to-integrate-no-captcha-recaptcha-in-your-website--cms-23024)来做,绕过Zend的库,一切正常。

答案 1 :(得分:0)

我是"browserlife/zf2-recaptcha"的开发人员。  请查看此模块的自述文件:https://github.com/malganis93/BrlReCaptcha

如果这不能解决您的问题,请与我联系。