我想将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。
答案 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
如果这不能解决您的问题,请与我联系。