【问题标题】:Validating reCAPTCHA v3 in Django在 Django 中验证 reCAPTCHA v3
【发布时间】:2019-05-03 08:27:51
【问题描述】:

在 reCAPTCHA V2 中,我可以在 views.py 本身中进行验证。但是在 V3 中我不知道如何进行。现在我在 127.0.0.1 的开发中使用它。

首先我生成了站点密钥和密钥。 在 settings.py 我添加了密钥, GOOGLE_RECAPTCHA_SECRET_KEY = 'my_secret_key_here'

然后在我的 signup.html 中, <script src='https://www.google.com/recaptcha/api.js?render=my_site_key_here'></script>

与以前不同的是,没有

标签来添加复选框。脚本本身会在我的浏览器一侧呈现 recaptcha 符号。

我的问题是,

  1. 如何使用 grecaptcha.execute 进行验证。

  2. 我是否必须将带有我的站点密钥的脚本添加到我想要防止垃圾邮件的每个页面,或者有什么简单的方法

【问题讨论】:

    标签: python django recaptcha recaptcha-v3


    【解决方案1】:

    是的,您需要将其添加到具有提交表单的每个页面。验证仍然在视图中进行。

    这个库似乎做了繁重的工作以简化集成 - https://github.com/kbytesys/django-recaptcha3

    【讨论】:

      【解决方案2】:

      这篇文章看起来可以帮助您解决问题:How to implement google recaptcha v3 on your django

      总结:

      1. 调用execute方法,这将返回您需要在后端验证的令牌。

      2. 您可以将其保存在表单中的某个位置

      3. 提交表单时发送令牌

      4. 在您的视图中验证令牌

      我是否必须将带有我的站点密钥的脚本添加到我想要防止垃圾邮件的每个页面,或者有什么简单的方法

      确切地说,您需要在要防止垃圾邮件的每个页面上添加脚本。

      【讨论】:

        猜你喜欢
        • 2018-10-28
        • 2015-02-01
        • 2015-06-15
        • 1970-01-01
        • 1970-01-01
        • 2021-12-22
        • 1970-01-01
        • 2022-06-13
        • 2020-08-22
        相关资源
        最近更新 更多