当前位置: 首页 > wzjs >正文

网站关于我们介绍模板宁波网站建设与维护

网站关于我们介绍模板,宁波网站建设与维护,如何查看实时街景地图,eclipse可以做门户网站嘛一、概述 reCAPTCHA v3 是一种用于区分用户和机器人行为的安全验证服务。它通过在后台评估用户行为并返回一个分数来判断用户是否为真实用户。本文将介绍如何在前端和后端实现 reCAPTCHA v3 的集成。 二、注册和密钥生成 注册 reCAPTCHA v3 访问 Google reCAPTCHA 管理页面&a…

一、概述

reCAPTCHA v3 是一种用于区分用户和机器人行为的安全验证服务。它通过在后台评估用户行为并返回一个分数来判断用户是否为真实用户。本文将介绍如何在前端和后端实现 reCAPTCHA v3 的集成。

二、注册和密钥生成

  1. 注册 reCAPTCHA v3

    • 访问 Google reCAPTCHA 管理页面(需确保链接合法且网络正常)。
    • 如果链接无法访问,请检查链接的合法性或稍后重试。
    • 注册时需要填写网站信息,并选择 reCAPTCHA v3。
    • 注册完成后,Google 会生成一对密钥:
      • 前端密钥(Site Key):用于前端页面。
      • 后端密钥(Secret Key):用于后端验证。
  2. 密钥示例

    • 前端密钥:4LfczOEqAAAAAK9B4aegJ3McvFYjCra0GSEHSVI9(请替换为实际生成的密钥)
    • 后端密钥:4LfczOEqAAAAALFmTHfxHimHV35T8C0FuRXN26Un(请替换为实际生成的密钥)

三、前端实现

  1. 引入 reCAPTCHA 脚本
    在 HTML 文件中,添加以下脚本以加载 reCAPTCHA v3:

    <script src="https://www.google.com/recaptcha/api.js?render=Site_Key"></script>
    
  2. 执行 reCAPTCHA
    在页面加载完成后,调用 grecaptcha.execute 方法生成验证令牌:

    window.grecaptcha.ready(() => {window.grecaptcha.execute('Site_Key', { action: 'submit' }).then((token) => {console.log(token); // 获取到的验证令牌// 将令牌发送到后端进行验证request('backend_api_url', { recaptcha: token }).then((res) => console.log(res));});
    });
    
    • 注意
      • action 参数用于指定用户行为的类型(如 submit)。
      • 生成的 token 需要发送到后端进行验证。

四、后端实现

  1. 安装依赖
    确保安装了 axios

    npm install axios
    
  2. 验证 reCAPTCHA
    后端代码如下:

    import axios from "axios";interface RecaptchaRequest {secret?: string;response: string;remoteip?: string;
    }async function verifyRecaptcha(requestData: RecaptchaRequest): Promise<any> {requestData.secret = "Secret_Key"; // 替换为实际的后端密钥console.log("🚀 ~ verifyRecaptcha ~ requestData:", requestData);try {const url = "https://www.google.com/recaptcha/api/siteverify";const params = new URLSearchParams();params.append('secret', requestData.secret);params.append('response', requestData.response);if (requestData.remoteip) {params.append('remoteip', requestData.remoteip);}const response = await axios.post(url, params);return response.data;} catch (error) {console.error("Error verifying reCAPTCHA:", error);throw error;}
    }export default verifyRecaptcha;
    
  3. 返回结果示例
    验证成功后,Google 返回的结果如下:

    {"action": "submit","challenge_ts": "2025-02-25T07:25:55Z","hostname": "192.168.3.21","score": 0.9,"success": true
    }
    
    • success:验证是否成功。
    • score:用户行为的分数(0~1),值越高表示越可能是真实用户。
    • action:与前端传入的 action 参数一致。
    • hostname:请求来源的 IP 地址。

五、注意事项

  1. 密钥安全

    • 前端密钥可以公开,但后端密钥必须保密,切勿泄露。
    • 不要将密钥硬编码在代码中,建议使用环境变量管理密钥。
  2. 网络问题
    如果在访问 Google reCAPTCHA 管理页面 或其他相关链接时遇到问题,请检查网络连接或链接的合法性。

  3. 调试

    • 在开发过程中,建议使用 console.log 或日志工具记录调试信息。
    • 如果后端验证失败,请检查 token 是否正确传递,以及后端密钥是否正确。

六、补充

在前端和后端集成 reCAPTCHA v3,有效防止机器人攻击并保护网站安全。在你的配置管理页面,要把启动v3的网站域名填进去,不然不能生效,后端无法解析前端回传的信息。

http://www.dtcms.com/wzjs/141211.html

相关文章:

  • 佛山高端网站设计魔贝课凡seo
  • 江津网站建设怎么样今日头条新闻10条
  • 广州专业的网站建设公司哪家好seo在线优化排名
  • 在哪找做调查赚钱的网站互联网广告代理可靠吗
  • 世界疫情最新数据图快手seo
  • 网站广告的优势东莞网站建设方案外包
  • 建筑工程师培训学校小果seo实战培训课程
  • 做餐饮连锁在哪个网站看网络营销有什么
  • vb .net网站开发原画培训班一般学费多少
  • 网站建设费用预算表河南企业站seo
  • 网站上的公告怎么做参考文献百度关键词搜索排名
  • rust做网站站长工具星空传媒
  • 安徽常青建设集团网站做一个app软件大概要多少钱
  • 沧州百度爱采购南山网站seo
  • 做一公司网站百度热门搜索排行榜
  • 建网站难不难宁波seo教学
  • 公司做网站让我们销售有什么好的网站吗
  • 怎么查网站的域名备案网站建设服务商
  • 微信在线登录平台哈尔滨seo网络推广
  • 徐州网站建设商城制作网站推广seob2b有哪些电商平台
  • 怎么给网站做广告产品软文范例1000字
  • 徐州网站公司关键词搜索推广排行榜
  • 安陆网站建设西安seo招聘
  • 湖州做网站公司哪家好国内高清视频素材网站推荐
  • wordpress国外付费主题下载重庆百度推广关键词优化
  • 中山哪里做网站常德网站设计
  • python 菜鸟教程seo优化大公司排名
  • 沈阳网站维护公司软文推广页面
  • 郑州天道做网站厦门seo百度快照优化
  • 欧美独立站建站网络营销的推广