javascript - 如何使用 jquery 处理 google recapcha?

标签 javascript php jquery recaptcha

我需要一些关于谷歌验证码的信息。我想获取“g-recaptcha-response”的值,该值与我在 jquery 文件中插入的 captcha.php 文件进行比较,然后使用 jquery $.post() 方法将其发送到 captcha.php 文件。如果这是重复的,我深表歉意,但我真的找不到有同样问题的人;)

HTML

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="generator" content="AlterVista - Editor HTML"/>
    <script src='https://www.google.com/recaptcha/api.js'></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script src="handle_spam.js" type="text/javascript"></script>
    <title></title>
</head>
<body>

    <div class="g-recaptcha" data-sitekey="6Lf8LxIUAAAAALg93pw24l53KTeqrIwl7kUY-opk"></div>
    <button id="go">Register</button>

</body>
</html>

PHP

<?php
    $captcha=$_POST['g-recaptcha-response'];
    echo $captcha;       
    if(!$captcha){
        echo 'You must verify yourself';
        exit;
    }
    $response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6Lf8LxIUAAAAACB9iqeOermR-rPOW0zcWRfoetBO&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']);
    if($response.success==false)
    {
        echo 'abort_all';
    }else
    {
        echo 'success';
    }
?>

JS

$(document).ready(function(){
    $('#go').click(function(){
        send=$('')
        $.post('captcha.php',function(data){
            alert(data);
        });
    });
});

最佳答案

使用这个

<div class="g-recaptcha" data-callback="captchaCallback" data-sitekey="...">

并提供函数:

function captchaCallback(response) {
    alert(response);
}

关于javascript - 如何使用 jquery 处理 google recapcha?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41703752/

相关文章:

javascript - 检测鼠标从哪一侧离开 div

javascript - 电子邮件未发送。 ajax发送的值

javascript - Jquery Javascript 对象 - 将某些值与另一个类似对象进行比较并替换

javascript - 文本框显示

javascript - 如何在 'value' 输入之前修改 VueJS 中的 `$emit(' prop')`完成更新

php - 警告:strlen()期望参数1为字符串,给定[duplicate]数组

php - where_in 只返回 1 行

php - .php 文件未在所有浏览器中查看

jquery - 使用 jQuery : should I use $. ajaxSetup() 或 $.fn.ajaxError() 处理 AJAX 错误

Jquery 淡入淡出背景/表格行上的动画背景颜色