首页
学习
活动
专区
圈层
工具
发布

使用jQuery验证RECAPTCHA

要使用jQuery验证reCAPTCHA,您需要执行以下几个步骤:

  1. 在Google reCAPTCHA网站注册您的网站:https://www.google.com/recaptcha,并获取站点密钥(Site Key)和密钥(Secret Key)。
  2. 在HTML页面中,引入Google reCAPTCHA API和jQuery库,然后在<head>标签内添加以下代码:
代码语言:javascript
复制
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  1. <body>标签中,添加reCAPTCHA容器和表单:
代码语言:javascript
复制
<form id="myForm" action="your_action_url" method="post">
  <!-- 在此处添加其他表单字段 -->
  
  <div class="g-recaptcha" data-sitekey="your_site_key"></div>
  <button type="submit">提交</button>
</form>

请将your_site_key替换为您在步骤1中获取的站点密钥,将your_action_url替换为您的表单处理URL。

  1. <head>标签内,添加以下jQuery代码以验证reCAPTCHA:
代码语言:javascript
复制
<script>
$(document).ready(function() {
  $('#myForm').on('submit', function(e) {
    e.preventDefault();
    
    // 获取reCAPTCHA响应
    var recaptchaResponse = grecaptcha.getResponse();
    
    // 检查是否填写了reCAPTCHA
    if (recaptchaResponse.length === 0) {
      alert('请完成reCAPTCHA验证');
      return;
    }
    
    // 发送AJAX请求验证reCAPTCHA
    $.ajax({
      url: 'https://www.google.com/recaptcha/api/siteverify',
      type: 'POST',
      data: {
        secret: 'your_secret_key',
        response: recaptchaResponse
      },
      success: function(response) {
        if (response.success) {
          // reCAPTCHA验证成功,提交表单
          $('#myForm')[0].submit();
        } else {
          // reCAPTCHA验证失败
          alert('reCAPTCHA验证失败,请重试');
        }
      },
      error: function() {
        alert('AJAX请求失败,请检查网络连接');
      }
    });
  });
});
</script>

请将your_secret_key替换为您在步骤1中获取的密钥。

注意:这种方法会在每次表单提交时发送一个额外的请求到Google reCAPTCHA服务器。为了避免不必要的请求,您可以考虑仅在客户端验证通过后(例如,通过检查reCAPTCHA响应是否存在)才提交表单。然后,在服务器端再次验证reCAPTCHA响应,以确保安全性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的文章

领券