我已经为我们的网站实现了一个新的登录页面,其中一个要求是在表单中的两个元素(一个用于注册,另一个用于获取用户名/密码提示)上有recaptcha。
我设法使两个recaptchas工作,并且它们都正常工作。然而,当我尝试使用recaptcha.getResponse()或使用recaptcha.render(‘回调’)方法时,它不会返回JSON,尽管规范中这样说。这里有一点
响应是一个JSON对象
{
"success": true|false,
"error-codes": [...] // optional
}在返回的数据中,我没有得到任何这样的远程信息。相反,它看起来像Base64编码,但失败的任何解码器,我已经尝试过。看上去像这样
03AHJ_VuvWh4kgzEcKC_TBcc_BQjLucuL6g5tKXwYJT...(lots之后的更多信息)
这是我做recaptchas的代码。可能看起来很乱,但这只是原型。有人能看到我是不是做错了什么吗?我想我完全按照规范行事了。
HTML (为了简洁起见)
<script type="text/javascript" src="https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit" async defer></script>
<div id="div_signup_recaptcha"></div>
<div id="div_forgotdetail_recaptcha"></div>JS/jQuery
var grecaptchaSignup, grecaptchaForgotDetail;
var verifyForgotDetailCallback = function (response) {
console.log(response);
}
var verifySignupCallback = function (response) {
console.log(response);
}
var onloadCallback = function () {
grecaptchaSignup = grecaptcha.render('div_signup_recaptcha', {
'sitekey': 'mykey',
'callback': verifySignupCallback
});
grecaptchaForgotDetail = grecaptcha.render('div_forgotdetail_recaptcha', {
'sitekey': 'mykey',
'callback': verifyForgotDetailCallback
});
};发布于 2014-11-20 10:54:35
https://stackoverflow.com/questions/27036937
复制相似问题