reCAPTCHA停止工作 - 无效加密

Emi*_*sic 16 html javascript php recaptcha

我已经在我的网站上使用了reCAPTCHA一段时间了,我突然意识到它已经停止工作了.reCAPTCHA在那里,但是在正确验证之后,使表单提交失败的响应FAILS.

在客户端控制台上,浏览器出错:

未捕获(承诺)无效加密.

我试图搜索此错误但找不到类似的东西.提交表单后,PHP中的服务器端验证失败.我不确定上面的错误是否相关,但之前没有.

客户端集成的示例页面:

<html>
<head>
    <title>reCAPTCHA demo: Simple page</title>
     <script src="https://www.google.com/recaptcha/api.js" async defer> 
</script>
</head>
  <body>
    <form action="?" method="POST">
      <div class="g-recaptcha" data-sitekey="your_site_key"></div>
      <br/>
      <input type="submit" value="Submit">
    </form>
   </body>
</html>
Run Code Online (Sandbox Code Playgroud)

服务器端验证PHP:

$response = json_decode( 
    file_get_contents( 
 "https://www.google.com/recaptcha/api/siteverifysecret=MY_SECRET&response=".$_POST['g-recaptcha-response']."&remoteip=".$_SERVER['REMOTE_ADDR'] ), true );

if($response['success'] == false){
    echo "FAIL";
} else {
    //do something
}
Run Code Online (Sandbox Code Playgroud)

我按照这里的说明进行操作.

小智 3

我昨天遇到了同样的问题。看起来谷歌已经承认了这个问题并正在努力解决它。他们声称这不会影响 reCAPTCHA 的整体功能。

我在这里获得了这个信息。

下面是对话的屏幕截图。

谷歌论坛的屏幕截图