谷歌reCaptcha永远加载

时间:2015-11-06 16:14:39

标签: javascript recaptcha

我在我的网站上使用Google的reCaptcha 2.0。它曾经运作良好,但自从我向公众开放我的网站并获得更多用户后,recaptcha不再适用于大多数用户..它加载正常,但一旦用户点击“我不是机器人”复选框,它会永远加载,永远不会返回确认。

我试图在网上查找它,但找不到有类似问题的人,我不知道如何(或者我可以)调试它,因为显然它没有返回谷歌的回复。我所有的钥匙都是正确的。

有人可以帮帮我吗?我的网站是www.heropanel.com - 要模拟它,点击页面底部的联系人,然后点击“我不是机器人”复选框。

4 个答案:

答案 0 :(得分:4)

其实我找到了答案。验证码在一个模态弹出div中加载。加载此弹出窗口时,它会更改div的父级,并以某种方式破坏了验证码(可能是一些嵌入式安全代码)。我的解决方案是在窗口弹出后重新加载验证码。

答案 1 :(得分:3)

你的问题是:

<div class="g-recaptcha" data-theme="light"></div>

你缺少属性。正确的将是:

<script src='https://www.google.com/recaptcha/api.js'></script>
<div class="g-recaptcha" data-sitekey="your_google_public_key"></div>

在使用Google验证码之前,您已创建 data-sitekey

https://developers.google.com/recaptcha/docs/displayhttps://www.google.com/recaptcha/admin#createsite

了解详情

答案 2 :(得分:0)

我有同样的问题。当我点击reC​​aptcha它只是加载而不给出响应。我发现大多数解决方案是重新加载reCaptcha,但它无法解决我的问题。最后我发现我使用bool类型变量&#39; length = false&#39;导致产生这个问题。我jsut更改变量名称并解决我的问题。

  1. 使用&#39; grecaptcha.reset();&#39;重新加载或重置reCaptcha。

  2. 请确保不要在脚本中使用任何保留字(如上所述)。

答案 3 :(得分:0)

切换到SSL后,我能够解决此问题 尽管即使在http下,桌面上的所有内容都可以正常工作。 移动Android reCaptcha未经批准继续旋转