【问题标题】:What do I do with low Scores in reCAPTCHA v3?reCAPTCHA v3 中的低分怎么办?
【发布时间】:2020-01-19 17:40:10
【问题描述】:

我已经在我的 ASP.NET MVC 项目上设置了 reCAPTCHA v3。一切正常,并且正在正确传回数据。

因此下面的代码取决于我拥有的另一个 dll,但基本上,响应以对象的形式返回,该对象显示 JSON 请求传回的所有内容,如 https://developers.google.com/recaptcha/docs/v3 所记录的那样

一切正常。

但是现在我知道响应是成功的,并且我有一个分数,我该怎么办?如果分数为 0.3 或以下会怎样?有些人建议同时设置 v2 以进行二次验证(即“选择此图片中的所有停车标志”或“输入您看到的单词”)。这真的是唯一的“好”选择吗?

显然代码还不完美。我可能会在 AJAX 调用而不是控制器中处理解决方案,但仍然如此。分数低了怎么办?

我读了这篇文章 reCaptcha v3 handle score callback 它有点帮助,但我仍然难以理解。我不一定需要代码(尽管它永远不会受到伤害),而只是关于如何做的建议。

查看:

<script src="https://www.google.com/recaptcha/api.js?render=@Session["reCAPTCHA"]"></script>

grecaptcha.ready(function () {
    grecaptcha.execute('@Session["reCAPTCHA"]', { action: 'homepage' }).then(function (token) {

        $.ajax({
            type: "POST",
            url: "Home/Method",
            data: JSON.stringify({token: token }),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {
                console.log('Passed the token successfully');
            },
            failure: function (response) {
                alert(response.d);
            }
        });
  });
  });

控制器:

[HttpPost]
     public void ReCaptchaValidator(string token)
    {
        ReCaptcha reCaptcha = new ReCaptcha();
        Models.ReCaptcha response = new Models.ReCaptcha();          
        response = reCaptcha.ValidateCaptcha(token);
        //response returns JSON object including sucess and score

        if (response.Success)
        {
             //WHAT DO I DO HERE????
        }
    }

【问题讨论】:

  • 请注意,在您的代码 sn-p 中,您从未真正验证从验证返回的 score 是好是坏。检查成功的响应并不表明您应该让用户继续,它只是意味着您的请求格式正确。
  • 是的,我并不担心代码本身,但我必须把它放在这里,否则人们会不必要地生气。我正在恢复分数,但这并不是问题的真正意义。

标签: asp.net-mvc recaptcha-v3


【解决方案1】:

最后从另一个论坛得到答案。基本上,答案是“任何你想要的”。处理成功没有对错之分。

所以可以做的是,如果响应成功并且 CAPTCHA 没有抛出标志,则什么也不做。但如果 CAPTCHA 不满意,您可以显示“无法处理”的警报或横幅,或者您甚至可以添加 CAPTCA 版本 2,这将使他们进行图片测试或“我不是机器人”复选框等。

【讨论】:

    猜你喜欢
    • 2021-12-22
    • 2020-05-14
    • 2020-02-22
    • 1970-01-01
    • 1970-01-01
    • 2019-02-19
    • 2022-01-19
    • 2023-02-07
    • 2015-10-25
    相关资源
    最近更新 更多