使用AJAX确定无验证码reCAPTCHA的成功性

4
尝试使用 AJAX 调用将新的无验证码 reCAPTCHA 实现到我的网站中。如果我使用基本表单和提交按钮,它可以正常工作,但是当我尝试通过 AJAX 实现时,它失败了。
$.ajax({
    url: "/REST/takeFountainItem",
    dataType: "json",
    type: "POST",
    data: {
        "g-recaptcha-response": $("#g-recaptcha-response").val()
    }
}).done(function(data) {
    console.log(data);
});

我需要调用某个函数吗?如果我查看头信息,它会发送一个很长的密钥,但无论如何该密钥都无法验证。

1个回答

0

Google提供了一个验证验证码的函数。在允许表单提交之前,您需要进行验证。请参阅他们的文档以获取更多详细信息:https://developers.google.com/recaptcha/docs/display

我的设置类似于这样: <script src='https://www.google.com/recaptcha/api.js?onload=reCaptchaCallback&render=explicit'></script>

var RC2KEY = 'sitekey';
function reCaptchaVerify(response) {
    if (response === document.querySelector('.g-recaptcha-response').value) {
        /* do something */
    }
}

function reCaptchaExpired () {
    /* do something when it expires */
}

function reCaptchaCallback () {
    grecaptcha.render('id', {
        'sitekey': RC2KEY,
        'callback': reCaptchaVerify,
        'expired-callback': reCaptchaExpired
    });
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接