检测谷歌recaptcha执行的错误

Posted

技术标签:

【中文标题】检测谷歌recaptcha执行的错误【英文标题】:Detect error for google recaptcha execute 【发布时间】:2021-05-22 06:50:45 【问题描述】:

如果发生错误、没有连接或超时连接,我如何为 grecaptcha.execute() 设置一个等效的 .fail。

<script>
  function onClick(e) 
    e.preventDefault();
    
    grecaptcha.ready(function() 
        grecaptcha.execute('reCAPTCHA_site_key', action: 'submit').then(function(token) 
            // Code if no error
        );

        // Catch the error if occurred
    );
  

【问题讨论】:

【参考方案1】:

您是否尝试将其传递到 try/catch 块中?

function onClick(e) 
  e.preventDefault();

  try 
    grecaptcha.ready(function () 
      grecaptcha
        .execute("reCAPTCHA_site_key",  action: "submit" )
        .then(function (token) 
          // Code if no error
        );
    );
   catch (e) 
    console.log(e);
  
  // Catch the error if occurred

【讨论】:

是的,我试过了,但脚本没有捕获错误。我自愿断开我的连接以进行测试。控制台中的错误是 POST google.com/recaptcha/api2/reload?k=<MyKey> net::ERR_NAME_NOT_RESOLVED

以上是关于检测谷歌recaptcha执行的错误的主要内容,如果未能解决你的问题,请参考以下文章

Recaptcha V3 错误错误-captcha-sol 随机

necaptcha error

我如何使用 localhost 作为我的域进行 recaptcha

Spring Boot 下使用谷歌 reCAPTCHA v3

在 ASP.NET 的服务器端验证 Recaptcha 2 (No CAPTCHA reCAPTCHA)

The reCAPTCHA 啥意思?