初学者从零开始学习使用谷歌验证码reCAPTCHA,国内如何使用?

23,249次阅读
没有评论

共计 2180 个字符,预计需要花费 6 分钟才能阅读完成。

reCAPTCHA 简介

老规矩,先介绍一下什么是 reCAPTCHA

reCAPTCHA 是由 Google 开发的一项反机器人(CAPTCHA)技术。它旨在帮助网站和应用程序识别真实用户并抵御恶意活动,如垃圾邮件、爬虫、自动注册等。reCAPTCHA 结合了人类直觉和计算机视觉的力量,通过识别用户是否为真实人类来进行验证。

reCAPTCHA 通过向用户展示一个包含文本、图像或声音的小测试来验证其人类身份。这个测试要求用户执行一些简单的任务,例如选择相关图片、解读模糊文字或听取语音提示,并在相应的文本框中输入答案。这种方式可以有效区分人类用户和自动化机器人。

reCAPTCHA 的一个重要特点是它能够自适应地提供不同难度级别的验证,根据用户的交互行为和风险评估来调整难度。对于可信度较高的用户,可能只需要点击复选框即可完成验证;而对于可疑的用户,则可能需要执行更复杂的任务。

使用 reCAPTCHA 可以帮助网站和应用程序保护用户隐私,防止恶意活动,并提高用户体验。

【总结就是一句话:图片验证码不行,很容易识别,使用 reCAPTCHA 就是让别人去破解谷歌的验证码嘛】多的不说,直接上真机实验。主要基于 reCAPTCHA v2

完整实现步骤

步骤 1、申请密钥

首先,你需要前往 reCAPTCHA 网站 注册一个账户并创建一个新的网站。

网址:(www.google.com/recaptcha)(www.google.com/recaptcha/admin/create)

申请密钥

在创建网站时,你将获得两个关键信息:

记下这两个密钥,它们会在接下来的步骤中使用。

获取 reCAPTCHA 密钥并且记住

步骤 2、在 HTML 页面加载 reCAPTCHA 脚本

加载reCAPTCHA 脚本,非常简单,只需要加入 js 和 HTML 代码即可。请查看以下代码


就像上面的一样。html 加载 reCAPTCHA 很简单,放入代码直接就出来效果了,效果图如下:

HTML 页面加载 reCAPTCHA 脚本效果图

步骤 3、服务端的验证

这里用放的 php 示例,验证端不多说,直接上代码。

 $secret_key,
    'response' => $recaptcha_response
);

$ch = curl_init($verify_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));

$response = curl_exec($ch);
curl_close($ch);

$response_data = json_decode($response);

// 验证 reCAPTCHA 响应结果
if ($response_data->success) {
    // reCAPTCHA 验证成功,执行你想要的操作
    echo "reCAPTCHA 验证成功!";
} else {
    // reCAPTCHA 验证失败,采取相应措施
    echo "reCAPTCHA 验证失败!";
}
?>

注意事项,相关问题解决方案

版本分两个

reCAPTCHA v3 和 reCAPTCHA v2,基本上没有什么差别.

reCAPTCHA v3 和 reCAPTCHA v2 是 Google 提供的两个版本的反机器人验证系统,它们在设计和使用上有一些区别。

1. 用户交互方式:

  • reCAPTCHA v3:reCAPTCHA v3 采用了无感知验证的方式,它通过分析用户在网站上的行为来评估其是否为机器人。这意味着用户不需要进行任何人工操作或解决谜题,验证过程是完全隐式的。

  • reCAPTCHA v2:reCAPTCHA v2 则要求用户完成识别图片、文字或声音的任务,以证明他们是真实的人类用户。这需要用户与 reCAPTCHA 小部件进行交互,并手动解决相应的验证问题。

2. 验证级别:

  • reCAPTCHA v3:reCAPTCHA v3 不再基于传统的“人类 / 机器人”二分法,而是引入了一个连续性的积分系统。它根据用户的行为和其他信号来计算用户的风险分数。你可以根据这个分数自定义阈值,以确定哪些用户被认为是机器人。reCAPTCHA v3 提供了更灵活的验证级别和更精细的控制。

  • reCAPTCHA v2:reCAPTCHA v2 是基于传统的二进制验证模型的,即将用户划分为“人类”或“机器人”。用户必须成功解决相应的验证问题,以通过验证。

3. 集成难度:

  • reCAPTCHA v3:reCAPTCHA v3 的集成较为简单,只需在网站中插入一个标签,并通过后端进行验证。验证结果可以通过 API 获取,并根据需要进行处理。

  • reCAPTCHA v2:reCAPTCHA v2 的集成需要在前端添加 JavaScript 代码来显示和处理 reCAPTCHA 小部件,并在后端进行验证。这种交互式的验证方式可能需要更多的开发工作和前端调整。

综上所述,reCAPTCHA v3 提供了一种无感知验证方式,可以根据用户行为进行智能评估,而 reCAPTCHA v2 则要求用户进行手动交互以证明其为真实用户。选择哪个版本取决于你的具体需求和用户体验的考虑。

如何在国内使用 reCAPTCHA

将 www.google.com/recaptcha/ 替换为 recaptcha.net/recaptcha/ 即可,recaptcha.net 在国内暂时 没有被屏蔽 ,目前还可以正常使用。

文章来源地址 https://www.toymoban.com/diary/php/465.html

到此这篇关于初学者从零开始学习使用谷歌验证码 reCAPTCHA,国内如何使用?的文章就介绍到这了, 更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持 TOY 模板网!

原文地址:https://www.toymoban.com/diary/php/465.html

如若转载,请注明出处:如若内容造成侵权 / 违法违规 / 事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于1970-01-01发表,共计2180字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)