我已经在我的一个表单中集成了reCAPTCHA v3。在onload中,有一个生成的令牌和右下角的google captcha徽标。但是当我提交表单时,控制台中显示了一个错误," error : No reCAPTCHA clients exist“。而且,看起来"g-recaptcha-response“没有获取任何数据,而$_POST"g-recaptcha-response”仍然是空的。
以下是示例代码:
<script type="text/javascript">
var ReCaptchaCallbackV3 = function() {
grecaptcha.ready(function() {
grecaptcha.execute("site_key").then(function(token) {
console.log("v3 Token: " + token);
});
});
};
</script>
<script src="https://www.google.com/recaptcha/api.js?onload=ReCaptchaCallbackV3&render=site_key"></script>
提交表单时,它不会生成任何"g-recaptcha-response“。
我对google reCaptcha了解不多。我遵循了他们提供的文档,并以适当的方式使用了站点和密钥。
谁能告诉我问题出在哪里?可能的解决方案是什么?
发布于 2020-03-12 10:34:17
我遇到这个问题是因为我在站点上没有任何活动的Recaptcha时调用了grecaptcha.reset();
grecaptcha.reset();
recaptcha__en.js:507 Uncaught Error: No reCAPTCHA clients exist.
at MX (recaptcha__en.js:507)
at Object.Zn [as reset] (recaptcha__en.js:514)
at <anonymous>:1:13
https://stackoverflow.com/questions/53875281
复制相似问题